none
Mensagem de confirmação via código RRS feed

  • Pergunta

  • Pessoal,

    Tenho uma rotina onde o usuário clica em um determinado botão para incluir um dado na base de dados. Antes da inserção uma validação é efetuada e dependendo do resultado, preciso exibir uma mensagem pedindo a confirmação para a inserção do dado (por exemplo: "O usuário já existe na base de dados, confirma inclusão?").

    O código seria mais ou menos assim:

    if(metodo_validacao_necessita_confirmacao == true) if(exibir_mensagem_confirmacao_YES_OR_NO == YES)
    efetivar_a_operacao;
    else
    nao_efetivar_a_operacao;
    else
    efetivar_operacao;

    Não posso incluir um confirm no OnClick, pois para exibir a mensagem preciso executar uma operação de validação (no banco de dados).

    Alguém tem alguma ideia de como exibir esta mensagem de confirmação?


    quarta-feira, 8 de agosto de 2012 20:50

Respostas

  • Bruno vc pode fazer no cliente de pois fazer uma chamada via json tb

    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC

    • Marcado como Resposta Harley Araujo quinta-feira, 6 de setembro de 2012 17:21
    terça-feira, 14 de agosto de 2012 12:51
    Moderador

Todas as Respostas

  • use uma ModalPopUpExtender do Ajax Control Toolkit para abrir uma caixa de mensagem com o botão de OK e Cancelar. Ao clicar no botão de cancelar, ele fechará a modal. Ao clicar no OK, ele chama um método e esse método realiza o código efetivar_a_operacao.

    Espia aqui: http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/ModalPopup/ModalPopup.aspx


    Rafael Santos

    Apenas um pequeno gafanhoto

    • Marcado como Resposta Harley Araujo sexta-feira, 10 de agosto de 2012 10:47
    • Não Marcado como Resposta BrunoCosta.dsn terça-feira, 14 de agosto de 2012 11:09
    quarta-feira, 8 de agosto de 2012 21:03
  • Okay, sem usar o Ajax Control Toolkit como o Rafa Santos indicou (por que eu tenho nojo dessa coisa o.o) você pode fazer assim:

    Primeiro na sua rotina de validação fazer uma chamada ajax para um webmethod (se está usando webforms):

    var valido;
    $.ajax({
                    type: "POST",
                    url: "suaPagina.aspx/ValidaAlgo",
                    data: "{parametro:'" + param + "'}",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (msg) {
                        valido = msg.d
                    }
                });

    Depois, fazer um if maroto para ver se a variavel "valido" é true (ou seja lá o resultado que vc espera do webmethod.

    Okay, dentro desse if você coloca um javascript para fazer a pergunta marota, que vai ser assim:

    if(confirm('Deseja mesmo salvar?'))
    {
      //aqui sua lógica de post para envio
    }
    else 
    {
      alert("opa, então não salve :)");
    }

    Caso ainda não consiga fazer me dá um toque que eu te ajudo :)


    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX

    quinta-feira, 9 de agosto de 2012 14:37
  • Priscila,

    Preciso fazer uma validação no lado do servidor, no code behind:

    botao_method_click()
    {
    if(!validar())
    if(mensagem_confirmacao_YES_NO == YES)
    executa_rotina_A;
    else
    executa_rotina_B;
    }

    terça-feira, 14 de agosto de 2012 11:16
  • Bruno vc pode fazer no cliente de pois fazer uma chamada via json tb

    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC

    • Marcado como Resposta Harley Araujo quinta-feira, 6 de setembro de 2012 17:21
    terça-feira, 14 de agosto de 2012 12:51
    Moderador