Vou tentar explicar da melhor maneira possível minha situação.
O que eu preciso é exibir duas mensagens de confirmação ao usuário, uma seguida da outra, para que determinada operação possa ser executada no codebehind. Porém, entre uma confirmação e outra, deve ser executado um procedimento, e a partir do resultado desse procedimento, defino se a segunda mensagem será exibida. Calma que tem mais: tudo isso com AJAX xD.
O algoritmo é meio que assim:
Usuário clica no botão -> Mensagem confirmação -> Clicou OK-> Executa função Codebehind -> Função retornou false -> Nova mensagem de confirmação -> Clicou OK -> Mostra alert.
Já tentei de tudo quanto é maneira (até mesmo usando Reflection, que foi o que chegou mais próximo), e não dá certo.
Tipo, exibir uma mensagem de confirmação eu consigo, o problema está sendo exibir a segunda mensagem. O máximo que cheguei foi exibir as duas mensagens, porém mesmo se eu clicar cancelar na segunda, ele executa o alert.
Segue meu código até agora, usando Reflection para simular um Click no botão Hidden
Pergunta
Denis_Rave
Olá pessoal.
Ando agora me aventurando no mundo Web.
Vou tentar explicar da melhor maneira possível minha situação.
O que eu preciso é exibir duas mensagens de confirmação ao usuário, uma seguida da outra, para que determinada operação possa ser executada no codebehind. Porém, entre uma confirmação e outra, deve ser executado um procedimento, e a partir do resultado desse procedimento, defino se a segunda mensagem será exibida. Calma que tem mais: tudo isso com AJAX xD.
O algoritmo é meio que assim:
Usuário clica no botão -> Mensagem confirmação -> Clicou OK-> Executa função Codebehind -> Função retornou false -> Nova mensagem de confirmação -> Clicou OK -> Mostra alert.
Já tentei de tudo quanto é maneira (até mesmo usando Reflection, que foi o que chegou mais próximo), e não dá certo.
Tipo, exibir uma mensagem de confirmação eu consigo, o problema está sendo exibir a segunda mensagem. O máximo que cheguei foi exibir as duas mensagens, porém mesmo se eu clicar cancelar na segunda, ele executa o alert.
Segue meu código até agora, usando Reflection para simular um Click no botão Hidden
<head runat="server"> <title>Untitled Page</title> <script type="text/javascript"> function valida() { return confirm('Deseja continuar?'); } </script> </head> <body> <form id="form1" runat="server"> <asp:ScriptManager ID="ScriptManager1" runat="server" /> <div> <span style="font-size: 32pt">Teste <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <div style="visibility: hidden"> <asp:Button ID="btnHidden" runat="server" Text="Hidden" OnClick="btnHidden_Click" /></div> <asp:Button ID="btnOK" runat="server" Text="OK" OnClientClick="return valida()" OnClick="btnOK_Click" /> </ContentTemplate> </asp:UpdatePanel> </span> </div> </form> </body> </html>using System.Reflection; protected void btnOK_Click(object sender, EventArgs e) { if (!Verifica()) { Type t = typeof(Button); object[] p = new object[1]; p[0] = EventArgs.Empty; MethodInfo m = t.GetMethod("OnClick", BindingFlags.NonPublic | BindingFlags.Instance); m.Invoke(btnHidden, p); ScriptManager.RegisterClientScriptBlock(this.btnHidden, btnHidden.GetType(), "Hidden", "alert('Dados salvos com sucesso');", true); } } protected void btnHidden_Click(object sender, EventArgs e) { ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "Valida", "confirm ('Validação Incorreta. Deseja continuar?');", true); } private bool Verifica() { //executa a verificação return false; }Não achei nada do tipo na net, só para uma mensagem...
Abraços,
Denis
Editado por Denis_RaveLink para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.