如何在关闭sharepoint对话框后刷新父页面

本文关键字:刷新 对话框 sharepoint | 更新日期: 2023-09-27 18:17:13

如何在关闭sharepoint对话框后刷新父页面?下面是我打开弹出窗口的代码。

<input type="button" value="Add" class="button submit" style="width: 80px" onclick="javascript:OpenAttachmentUpload()" />
<script type="text/javascript">
    //User Defined Function to Open Dialog Framework
    function OpenAttachmentUpload() {
        var strPageURL = '<%= ResolveClientUrl("~/Dialogs/AttachUpload.aspx") %>';
        //OpenFixCustomDialog(strPageURL, "Attachment");
        OpenCustomDialog(strPageURL, 350, 200, "Attachment");
        return false;
    }
</script>

脚本如下:

function OpenCustomDialog(dialogUrl, dialogWidth, dialogHeight, dialogTitle, dialogAllowMaximize, dialogShowClose) {
    var options = {
        url: dialogUrl,
        allowMaximize: dialogAllowMaximize,
        showClose: dialogShowClose,
        width: dialogWidth,
        height: dialogHeight,
        title: dialogTitle,
        dialogReturnValueCallback: Function.createDelegate(null, CloseCallback3)
    };
    SP.UI.ModalDialog.showModalDialog(options);
}

打开后,当我关闭弹出(~/dialogues/AttachUpload.aspx)时,我想刷新父页面。我该怎么做呢?我谷歌和看到SP.UI.ModalDialog。RefreshPage,但仍然不能为我找到答案。谢谢。

设置我对SharePoint不太了解

如何在关闭sharepoint对话框后刷新父页面

你就快成功了。

在选项dialogReturnValueCallback中,您可以定义一个将在对话框关闭后执行的函数。到目前为止,您创建了一个指向CloseCallback3的委托,但这在代码中没有定义。

如果你在这个回调方法中调用SP.UI.ModalDialog.RefreshPage,页面会在对话框被OK关闭后刷新。

 var options = 
 {
        url: dialogUrl,
        allowMaximize: dialogAllowMaximize,
        showClose: dialogShowClose,
        width: dialogWidth,
        height: dialogHeight,
        title: dialogTitle,
        dialogReturnValueCallback: function(dialogResult) 
        { 
          SP.UI.ModalDialog.RefreshPage(dialogResult) 
        }
 }

顺便说一句:在按钮的onclick中使用javascript:。这是不必要的。这只需要在a标签的href

您也可以使用内置函数"RefreshOnDialogClose"

 SP.UI.ModalDialog.showModalDialog({
    url: dialogUrl,         
    allowMaximize: dialogAllowMaximize,         
    showClose: dialogShowClose,         
    width: dialogWidth,         
    height: dialogHeight,         
    title: dialogTitle,         
    dialogReturnValueCallback: RefreshOnDialogClose  
}); 

尝试在点击按钮时使用此代码:

<script type="text/javascript">
    function RefreshParent() 
    {
        SP.UI.ModalDialog.commonModalDialogClose(SP.UI.DialogResult.Ok, null);
    }
</script>

如果您只想在发生更改时刷新页面,则可以使用以下回调。

var options = 
{
    url: dialogUrl,
    allowMaximize: dialogAllowMaximize,
    showClose: dialogShowClose,
    width: dialogWidth,
    height: dialogHeight,
    title: dialogTitle,
    dialogReturnValueCallback: function(dialogResult) 
    {
        if (dialogResult != SP.UI.DialogResult.cancel)
        {
            SP.UI.ModalDialog.RefreshPage(dialogResult)
        }
    }
}

当用户点击取消时,避免刷新页面。

在close - call back中尝试下面的java脚本代码。

窗口。