Как обновить родительскую страницу после закрытия диалога sharepoint?
Как обновить родительскую страницу после закрытия диалога 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>
здесь находится 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);
}
После открытия, когда я закрываю всплывающее окно (~/Dialogs/AttachUpload.aspx), я хочу обновить родительскую страницу.
Как мне это сделать?
Я google и вижу SP.UI.ModalDialog.RefreshPage, но все равно не могу найти ответ для меня.
Спасибо.
P.s
Я мало знаю о SharePoint.
Ответы
Ответ 1
Ты почти там.
В опции 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)
}
}
Btw:
Вы используете javascript:
в onclick
кнопки. Это необязательно. это требуется только в теге href
тега a
Ответ 2
Вы также можете использовать встроенную функцию RefreshOnDialogClose "
SP.UI.ModalDialog.showModalDialog({
url: dialogUrl,
allowMaximize: dialogAllowMaximize,
showClose: dialogShowClose,
width: dialogWidth,
height: dialogHeight,
title: dialogTitle,
dialogReturnValueCallback: RefreshOnDialogClose
});
Ответ 3
Попробуйте использовать этот код одним нажатием кнопки:
<script type="text/javascript">
function RefreshParent()
{
SP.UI.ModalDialog.commonModalDialogClose(SP.UI.DialogResult.Ok, null);
}
</script>
Ответ 4
Если вы хотите обновить страницу только в случае внесения изменений, вы можете использовать следующий обратный вызов.
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)
}
}
}
Экономит вас от обновления страницы, если пользователь ударил.
Ответ 5
Попробуйте код java- script, как показано ниже в Closecall.
window.location = window.location;