1. При работе с web-parts иногда приходится добавлять application page, для того чтобы открывать ее в модальном окне необходимо добавить javaScript:
function openEditWindow()
{
var options = {
url: '/_layouts/requisition/editRequisition.aspx',
};
SP.UI.ModalDialog.showModalDialog(options);
}
2. Если мы хотим на нашей странице получить данные из кокого-либо элемента списка, то мы можем передать id этого элемента, тогда функция js будет выглядеть так:
function openEditWindow(idRequisition)
{
var options = {
url: '/_layouts/requisition/editRequisition.aspx?id_=' + idRequisition,
};
SP.UI.ModalDialog.showModalDialog(options);
}
3. Чтобы закрыть по кнопке модальное окно, нужно в обработчик button добавить код:
this.Page.Response.Clear();
this.Page.Response.Write("<script type=\"text/javascript\">window.frameElement.commonModalDialogClose(1, '1');</script>");
this.Page.Response.End();
4.Если мы хотим как-то оповестить пользователей, после закрытия окна, например, Изменения приняты, то нам на страницу которая вызывала модальное окно, нужно добавить javaScript:
function onDialogClose(dialogResult, returnValue) {
if(returnValue == 1)
{
var notifyId;
notifyId = SP.UI.Notify.addNotification("Изменения приняты", false);
}
}
и в options добавить: dialogReturnValueCallback: onDialogClose, теперь функция открытия модального окна выглядет:
function openEditWindow(idRequisition)
{
var options = {
url: '/_layouts/requisition/editRequisition.aspx?id_=' + idRequisition,
dialogReturnValueCallback: onDialogClose,
};
SP.UI.ModalDialog.showModalDialog(options);
}
После закрытия модально окна, пользователь увидит, в правом верхнем углу сообщение:
5. По умолчанию заголовок у application page -
, чтобы можно было его динамически менять в метод Page_Load можно добавить следующий код:
string par = Request.QueryString["id_"];
LiteralControl Lc = new LiteralControl("Заявка № " + par);
Master.FindControl("PlaceHolderPageTitle").Controls.Add(Lc);
Теперь:
function openEditWindow()
{
var options = {
url: '/_layouts/requisition/editRequisition.aspx',
};
SP.UI.ModalDialog.showModalDialog(options);
}
2. Если мы хотим на нашей странице получить данные из кокого-либо элемента списка, то мы можем передать id этого элемента, тогда функция js будет выглядеть так:
function openEditWindow(idRequisition)
{
var options = {
url: '/_layouts/requisition/editRequisition.aspx?id_=' + idRequisition,
};
SP.UI.ModalDialog.showModalDialog(options);
}
3. Чтобы закрыть по кнопке модальное окно, нужно в обработчик button добавить код:
this.Page.Response.Clear();
this.Page.Response.Write("<script type=\"text/javascript\">window.frameElement.commonModalDialogClose(1, '1');</script>");
this.Page.Response.End();
4.Если мы хотим как-то оповестить пользователей, после закрытия окна, например, Изменения приняты, то нам на страницу которая вызывала модальное окно, нужно добавить javaScript:
function onDialogClose(dialogResult, returnValue) {
if(returnValue == 1)
{
var notifyId;
notifyId = SP.UI.Notify.addNotification("Изменения приняты", false);
}
}
и в options добавить: dialogReturnValueCallback: onDialogClose, теперь функция открытия модального окна выглядет:
function openEditWindow(idRequisition)
{
var options = {
url: '/_layouts/requisition/editRequisition.aspx?id_=' + idRequisition,
dialogReturnValueCallback: onDialogClose,
};
SP.UI.ModalDialog.showModalDialog(options);
}
После закрытия модально окна, пользователь увидит, в правом верхнем углу сообщение:
5. По умолчанию заголовок у application page -
, чтобы можно было его динамически менять в метод Page_Load можно добавить следующий код:
string par = Request.QueryString["id_"];
LiteralControl Lc = new LiteralControl("Заявка № " + par);
Master.FindControl("PlaceHolderPageTitle").Controls.Add(Lc);
Теперь:
Комментариев нет:
Отправить комментарий