繁体   English   中英

在SharePoint CSOM中关闭showWaitScreenWithNoClose

[英]Closing showWaitScreenWithNoClose in SharePoint CSOM

我正在使用REST API创建列表。 在我的JavaScript代码中,我写了这样的内容:

// If I declare 'waitDialog' then it is not get closed by 
// calling 'waitDialog.close()'. Without any declaration it works.
var waitDialog;

function createList() {

    // Show wait dialog
    waitDialog = SP.UI.ModalDialog.showWaitScreenWithNoClose("Please wait...", "Please wait...", 100, 300);

    jQuery.ajax({
        // List data
        },
        success: doSuccess,
        error: doError
    });
}

function doSuccess(data) {
    waitDialog.close(); // Close wait dialog
}

function doError(data, errorCode, errorMessage) {
    waitDialog.close(); // Close wait dialog
}

如果我宣布waitDialog with语句var waitDialog; 无法通过调用waitDialog.close() 没有任何声明,它将起作用,并且对话框关闭。 我发现了这个问题 ,它详细说明了使用var之间的区别,但是没有什么可以澄清这种情况。

知道为什么它在没有声明的情况下工作而没有声明吗?

我无法重新创建您的声明问题。 我注意到的一件事...我相信您需要将枚举SP.UI.DialogResult传递给close方法

waitDialog.close(SP.UI.DialogResult.OK);

//显示并隐藏等待的JavaScript

function waitMessage() {
    window.parent.eval("window.waitDialog = SP.UI.ModalDialog.showWaitScreenWithNoClose('Processing...', '', 90, 300);");
}

function closeMessage() {
    if (window.frameElement != null) {
        if (window.parent.waitDialog != null) {
            window.parent.waitDialog.close();
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM