1

私は、sharepoint 2013 で sharepoint ホスト型アプリを開発しています。次の関数を使用して、sharepoint にファイルをアップロードしています。

 self.UploadFile = function () {

            // Suppose my business logic goes here

            appWebContext.load(files);
            appWebContext.executeQueryAsync(
            function () {

                alert("All files are uploaded.");
                SP.UI.ModalDialog.commonModalDialogClose();
                //SP.UI.ModalDialog.commonModalDialogClose();
                //window.close();

            },

           function (error, errorMes) {
               //SP.UI.ModalDialog.commonModalDialogClose();
               //$("#btnMigrate").val("Migrate Class");
               //$("#btnMigrate").removeAttr("disabled");
               //alert(errorMes.get_message());
               alert("Oooooops... it looks like something went wrong uploading your file.");
           });



    };

上記のコードは正常に動作します。「すべてのファイルがアップロードされました」というメッセージが表示されます。次に、エラーが発生しSP.UI.ModalDialog.commonModalDialogClose()ます。上記のコードSP.UI.ModalDialog.commonModalDialogClose();appWebContext.executeQueryAsync関数を呼び出すと、「Javascript ランタイム エラー: 関数が定義されていません」というエラーが表示されます。JavaScriptの非同期関数からUIを更新する方法を教えてください。コードまたはリンクを教えてください。

4

1 に答える 1

0

このSP.UI.ModalDialog.commonModalDialogClose()メソッドは、「結果」をパラメーターとして受け取ります。

SP.UI.ModalDialog.commonModalDialogClose(1,'Yay Success!');使用するようなものですSP.UI.DialogResult.OK

また、ダイアログ ウィンドウを操作するには、<script src="/_layouts/SP.UI.Dialog.js" type="text/javascript"></script>どこかにロードしておく必要があります。

関連記事参照: commonModalDialogClose(SP.UI.DialogResult.OK, someValue) throws error

于 2014-04-18T23:42:47.853 に答える