Невозможно вызвать модальное всплывающее окно главной страницы на дочерней странице. - PullRequest
0 голосов
/ 15 августа 2011

Я использую модальное всплывающее окно для отображения окна входа в систему.Модальное всплывающее окно находится на главной странице и связано со ссылкой для входа в нее.Теперь я хочу вызвать то же самое модальное всплывающее окно на дочерней странице, используя другую кнопку ссылки.Модальное всплывающее окно может быть вызвано ссылкой входа в систему главной страницы, но я хочу добавить этот второй элемент управления (linkButton) на дочерней странице, который может вызывать modalpop главной страницы.

Я пробовал это на дочерней странице:

function LogIn2()
{
$find("programmaticModalPopupBehavior").show();
} 

<asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="LogIn2">Log in</asp:LinkButton>

Ссылка: несколько TargetControls для ModalPopup

Как вызвать функциональное модальное всплывающее окно главной страницы из элемента управления на дочерней странице ??

Обновление:

Это на главной странице:

<ajax:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="linkLog" CancelControlID="linkClose" BackgroundCssClass="cssModal"                       PopupControlID="panelPopUp" BehaviorID="programmaticModalPopupBehavior" PopupDragHandleControlID="panelDrag"></ajax:ModalPopupExtender>

Ответы [ 2 ]

0 голосов
/ 17 августа 2011

Добавьте OnClientClick для LinkButton, например:

<asp:LinkButton ID="LinkButton1" runat="server" Text="Login 2" OnClientClick="return LogIn2()" ...>

Поместите функцию JavaScript на главной странице, и после показа всплывающего окна сделайте метод, возвращающий значение false, чтобы LinkButton не мог выполнить обратную передачу.:

function LogIn2()
{
    $find("<%=ModalPopupExtender1.UniqueID%>").show();
    return false;
}

В качестве альтернативы вы также можете добавить return false в OnClientClick LinkButton после выполнения функции LogIn2, например:

<asp:LinkButton ID="LinkButton1" runat="server" Text="Login 2" OnClientClick="LogIn2();return false;" ...>
0 голосов
/ 16 августа 2011

Я не уверен в этом, но позвольте мне подтвердить, что вы используете контроль ajax, как указано ниже

 <asp:ModalPopupExtender ID="ImageUploaderEx" runat="server"  BehaviorID="ImageUploaderBID" TargetControlID="Link Name" CancelControlID="Cancel"  PopupControlID="Panel to be open" OnCancelScript="hideUploader()"></asp:ModalPopupExtender>

Если да, то вы можете использовать этот же модал с другим именем. Если это не сработает, дайте мне знать, что я буду стараться изо всех сил

попробуйте это, если оно работает

((ModalPopupExtender)Page.Master.FindControl("ModalPopupExtender1")).Show();

и добавьте это также

using AjaxControlToolkit;
...