Комментарии можно оставлять "здесь"
Полезно бывает не гонять пользователя со страницы на страницу в момент, например, установки значений в таблицах, а открывать модельные окна с корректировкой или отображением подробной информации. Вот пример скрипта, который вызывает модальное окно со станицей, которая передана как параметр
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Карточка документа</title>
<SharePoint:ScriptLink ID="scriptLink" Name="sp.ui.dialog.js" LoadAfterUI="true" Localizable="false" runat="server"> </SharePoint:ScriptLink>
<script type="text/javascript" language="javascript">
function OpenDlg(URL) {
var options = SP.UI.$create_DialogOptions();
options.url = URL;
options.dialogReturnValueCallback = onDialogClose;
SP.UI.ModalDialog.showModalDialog(options);
}
function onDialogClose(dialogResult, returnValue) {
if (dialogResult == SP.UI.DialogResult.OK) {
}
if (dialogResult == SP.UI.DialogResult.cancel) {
}
}
</script>
</head>
<body>
....
Как пример вызова этого окна можно использовать
<a target="_self" runat="server" id="selectDlg" onclick="OpenDlg('/_layouts...');">
Чтобы из модального окна вернуть значение можно тем или иным способом создавать ссылку с необходимыми параметрами:
<a target="_self" onclick="window.frameElement.commonModalDialogClose(1, 'resultvalue');">закрыть</a>
а полученный результат уже обрабатывать в функции onDialogClose()
function onDialogClose(dialogResult, returnValue) {
if (dialogResult == SP.UI.DialogResult.OK) {
$("#<%=tbControl.ClientID %>").val(returnValue.substring(returnValue.indexOf('~') + 1));
}
if (dialogResult == SP.UI.DialogResult.cancel) {
}
}
модальное окно можно и закрывать по кнопке:
Context.Response.Write("<script type='text/javascript'>window.frameElement.commitPopup();</script>");
Context.Response.Flush();
Context.Response.End();
Скрипт для отмена и закрытия модального окна:
Комментарии можно оставлять "здесь"
Полезно бывает не гонять пользователя со страницы на страницу в момент, например, установки значений в таблицах, а открывать модельные окна с корректировкой или отображением подробной информации. Вот пример скрипта, который вызывает модальное окно со станицей, которая передана как параметр
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Карточка документа</title>
<SharePoint:ScriptLink ID="scriptLink" Name="sp.ui.dialog.js" LoadAfterUI="true" Localizable="false" runat="server"> </SharePoint:ScriptLink>
<script type="text/javascript" language="javascript">
function OpenDlg(URL) {
var options = SP.UI.$create_DialogOptions();
options.url = URL;
options.dialogReturnValueCallback = onDialogClose;
SP.UI.ModalDialog.showModalDialog(options);
}
function onDialogClose(dialogResult, returnValue) {
if (dialogResult == SP.UI.DialogResult.OK) {
}
if (dialogResult == SP.UI.DialogResult.cancel) {
}
}
</script>
</head>
<body>
....
Как пример вызова этого окна можно использовать
<a target="_self" runat="server" id="selectDlg" onclick="OpenDlg('/_layouts...');">
Чтобы из модального окна вернуть значение можно тем или иным способом создавать ссылку с необходимыми параметрами:
<a target="_self" onclick="window.frameElement.commonModalDialogClose(1, 'resultvalue');">закрыть</a>
а полученный результат уже обрабатывать в функции onDialogClose()
function onDialogClose(dialogResult, returnValue) {
if (dialogResult == SP.UI.DialogResult.OK) {
$("#<%=tbControl.ClientID %>").val(returnValue.substring(returnValue.indexOf('~') + 1));
}
if (dialogResult == SP.UI.DialogResult.cancel) {
}
}
модальное окно можно и закрывать по кнопке:
Context.Response.Write("<script type='text/javascript'>window.frameElement.commitPopup();</script>");
Context.Response.Flush();
Context.Response.End();
Скрипт для отмена и закрытия модального окна:
<
a
href
=
"#"
onclick
=
"window.frameElement.cancelPopUp(); return false;"
>
Cancel</
a
>
Комментарии можно оставлять "здесь"
Комментариев нет:
Отправить комментарий