Проверка ASP.NET не выполняется в вызове JavaScript showModalDialog - PullRequest
2 голосов
/ 18 февраля 2009

В настоящее время я открываю всплывающее окно со своей родительской страницы, используя функцию JavaScript .showModalDialog. Во всплывающем окне содержатся некоторые элементы управления проверкой ASP.NET, которые не отображаются, когда пользователь нажимает кнопку ASP.NET для отправки формы. Если на странице есть ошибка, сообщения проверки не отображаются, запись не обновляется на стороне сервера и всплывающее окно закрывается.

(элементы управления проверкой asp.net не мешают всплывающему окну выполнять обратную передачу на сервер)

Кто-нибудь ранее высказывался об этом поведении и есть ли способ его предотвратить?

Вот мой исходный код вызова showModalDialong:

function OpenChildWindow(id)
{
    var sFeatures = sFeatures="dialogHeight: 525px;";
    sFeatures += "dialogWidth: 900px;";
    sFeatures += "scroll: yes;";
    sFeatures += "status: no;";
    sFeatures += "resizeable: no;";

    var url = "MyPopUp.aspx?ID=" + id;
    var childName = "ChildForm";

    entryWindow = window.showModalDialog(url, childName, sFeatures);

    if (entryWindow == true)
    {
        window.document.getElementById("<%= btnUpdateParent.ClientID %>").click();
    }
}

Примечание: Когда всплывающее модальное окно закрывается, кнопка ASP.NET «щелкается», чтобы обновить панель обновления ASP.NET на родительском элементе, чтобы показать изменения записи, измененной во всплывающем окне окно.

1 Ответ

1 голос
/ 19 февраля 2009

Я думаю, что это может быть связано с пресловутой проблемой модальных диалогов и постбэков. Вы можете попробовать добавить следующее в заголовок страницы, которую вы открываете с помощью window.showModalDialog

<base target="_self" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...