Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
338 views
in Technique[技术] by (71.8m points)

my jquery is working until refresh only in sharepoint

I have a jquery script in sharepoint to insert a date with attachment. It's in the edit page. It works only after refreshing the edit page. How can I solve this problem?

 <script type="text/javascript">
    $(document).ready(function () {
        SP.SOD.executeFunc("sp.js", 'SP.ClientContext', RenameAttachments);
    });
    var attfiles;
    function RenameAttachments() {
        var ctx = new SP.ClientContext.get_current();
        attfiles = ctx.get_web().getFolderByServerRelativeUrl('Lists/Test/Attachments/' + getUrlParameter('ID')).get_files();
        ctx.load(attfiles);
        ctx.executeQueryAsync(Function.createDelegate(this, this.onSuccess), Function.createDelegate(this, this.onFailed));
    }

......... etc

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Please find the modification of the code.

This will run on the load of the page and it will work when we edit the share-point page.

<script type="text/javascript">
    jQuery(window).load(() => {
        SP.SOD.loadMultiple(["sp.js", "clienttemplates.js"], RenameAttachments);
      });
    var attfiles;
    function RenameAttachments() {
        var ctx = new SP.ClientContext.get_current();
        attfiles = ctx.get_web().getFolderByServerRelativeUrl('Lists/Test/Attachments/' + getUrlParameter('ID')).get_files();
        ctx.load(attfiles);
        ctx.executeQueryAsync(Function.createDelegate(this, this.onSuccess), Function.createDelegate(this, this.onFailed));
    }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...