ASP.NET AJAX Control Toolkit: показать ModalPopup, а затем сделать PostBack - PullRequest
2 голосов
/ 22 мая 2009

Я хочу показать модальное всплывающее окно, когда пользователь нажимает кнопку asp. Пользователь должен выбрать опцию панели. Значение выбранного параметра должно быть сохранено на скрытом входе, а затем кнопка asp.net должна выполнить a PostBack .

Могу ли я это сделать?

Спасибо!

Ответы [ 3 ]

9 голосов
/ 22 мая 2009

Возможно отображение ModalPopupExtender с использованием обратной передачи. Вам понадобится невидимый целевой контроль. Расширитель прикреплен к этому скрытому элементу управления.

<asp:Button runat="server" ID="btnShowModal" Text="Show" 
     OnClick="btnShowModal_Click" /> 
<asp:Button runat="server" ID="HiddenForModal" style="display: none" />
<ajaxToolKit:ModalPopupExtender ID="Modal1" runat="server" 
     TargetControlID="HiddenForModal" PopupControlID="PopupPanel" />

В обработчике сообщений в коде позади вы увидите ModalPopupExtender:

Modal1.Show();

И в коде, который вы используете, чтобы закрыть модал, вызовите функцию Hide из ModalPopupExtender:

Modal1.Hide();

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

2 голосов
/ 22 мая 2009

Добавьте кнопку или кнопку LinkButton

<asp:Button ID="MyButton" Text="Click Here" runat="server" />

Добавить панель для хранения ваших опций с DropDownList

<asp:Panel ID="MyPanel" runat="server">
  <asp:DropDownList ID="MyDropDown" runat="server">
    <asp:ListItem Value="1" Text="Option 1" />
  </asp:DropDownList>
  <asp:Button ID="SaveBtn" Text="Save" OnClick="Save_Click" runat="server" />
  <asp:Button ID="CancelBtn" Text="Cancel" runat="server" />
</asp:Panel>

Добавьте модель ModelPopupExtender

<act:ModalPopupExtender ID="Mpe1" TargetControlID="MyButton"  
    CancelControlID="CancelBtn" PopupControlID="MyPanel" runat="server" />

Затем добавьте свой код к кнопке SaveBtn

public void SaveBtn_Click(object sender, EventArgs e) {
  string selectedOption = MyDropDown.SelectedValue;
} 
1 голос
/ 25 февраля 2010

Наконец, я решил использовать jQuery для показа ModalPopUp. Следующий вопрос имеет ответ на этот вопрос:

Диалог jQuery UI не работает в ASP.NET

Если вы не согласны, скажите мне.

...