Pergunta

Quero mostrar um pop -up modal quando um usuário clica em um botão ASP. O usuário deve selecionar uma opção de um painel. O valor da opção selecionado deve ser salvo em uma entrada oculta e depois o botão ASP.NET deve fazer uma Postback.

Posso fazer isso?

Obrigada!

Foi útil?

Solução 3

Finalmente, decidi usar o jQuery para mostrar um modalpopup. A pergunta seguinte tem a resposta para esta pergunta:

A caixa de diálogo da JQuery UI não funciona no ASP.NET

Se você não concorda, diga -me.

Outras dicas

É possível que um modalpopuPextender seja exibido usando um postback. Você precisará de um controle de destino invisível. O extensor é anexado a esse controle oculto.

<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" />

No seu manipulador de mensagens no código-behind, você mostrará o ModalpoPuPextender:

Modal1.Show();

E no código que você está usando para descartar o modal, ligue para a função Hide ModalpoPuPextender:

Modal1.Hide();

Eu uso esse método para mostrar um modal que exibe dados detalhados que recupero de um banco de dados com base no que é selecionado em uma GridView.

Adicione seu botão ou linkbutton

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

Adicione um painel para manter suas opções com uma lista suspensa

<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>

Adicione o seu ModelPoPuPextender

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

Em seguida, adicione seu código atrás do botão SalveBtn

public void SaveBtn_Click(object sender, EventArgs e) {
  string selectedOption = MyDropDown.SelectedValue;
} 
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top