none
ASP + Javascript RRS feed

  • Pergunta

  • Pessoal, eu estou com um problema nesta rotina em asp.

    Um amigo disse que é javascript atrasado, disse que a mensagem

    do javascript ocorre antes de executar a funçao.

    Como resolvo isso?  Alguem poderia me ajudar?

     

    -- DESCRICAO DO ERRO

    1o. click (sem preencher textbox) mensagem de erro.

    2o. click (apos preencher textbox) mensagem de erro.  (Deveria ser OK)

    3o. click (logo apos segundo click) mensagem ok.

     

    Desde já agradeço a ajuda de todos;

     

     

     

    <html><head>
    <%
    Function EnviaEmail()
      
     Dim p_strNome
     p_strNome = Request.Form("nome")
      
     if p_strNome = null then p_strNome = "" End if
     
     EnviaEmail = "Email enviado com sucesso"
      
     if p_strNome <> "" then
      EnviaEmail = "OK"
     Else
      EnviaEmail = "Erro, preencha todos os dados."
     End if
     Exit Function
    End Function
    %>

    <title>:: FlexX GPS ::</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <style type="text/css">
    <!--
    body {
     background-image: url(http://www.endereco/images/bck_grd.jpg);
     background-repeat: repeat-x;
     margin-left: 0px;
     margin-top: 0px;
     margin-right: 0px;
     margin-bottom: 0px;
    }
    .form-noindent {background-color: #ffffff; border: #C3D9FF 1px solid}
    .style13 {
     color: #FFFFFF;
     font-family: Arial, Helvetica, sans-serif;
     font-size: 12px;
    }
    .style14 {color: #3D4912}
    -->
    </style>
    </head>
    <body bgcolor="#FFFFFF">
    <!-- ImageReady Slices (Layout_home_fatia.psd) -->
    <table width="50%" align="center" cellpadding="0" cellspacing="0">
      <tr>
         <td>
             <form name="form1" method="post" action="">
             <p class="style13"><span class="style14">nome:&nbsp;
                      <input name="msg" type="hidden" id="msg" size="25">
                      <input name="nome" type="text" id="nome" size="25">
                      <br>
                  </p>
                  <p align="center">
                    <input type="submit" name="button" id="button" value="Enviar"
         onclick="javascrit:alert(' <%= EnviaEmail() %> ');">
                  </p>
             </form>  
     </td>
      </tr>
    </table>
    </body>
    </html>

     

    sexta-feira, 8 de agosto de 2008 22:13

Respostas

  • Pessoal. Eu consegui e estou postando, quem sabe alguem precise. Funciona, mas utilizando javascript.

     

    Criei a função asp EnviarEmail();

    Criei uma função java script validar_Campos:

    No botão click

            input type="submit" name="button" id="button" value="Enviar"
            onclick="if (Validar_Campos('S')) { <%= EnivarEmail()  %>; javascrit:alert('Email enviado. Obrigado.');}"

    Na tag form do html:

    <form name="form1" method="post" action="pagina14.asp" name="dados" onsubmit="return Validar_Campos('')"

    <script>
    function Validar_Campos(mostraMsg)
    {
     if (document.getElementById("nome").value  == "")
         {
           if (mostraMsg == "S")
       alert("Digite todos os campos!");
           document.getElementById("nome").focus();
           return false;
         }
     if (document.getElementById("cnpj").value  == "")
         {
           if (mostraMsg == "S")
            alert("Digite todos os campos!");
           document.getElementById("cnpj").focus();
           return false;
         }

     return true;
    }

    </script>

     

    domingo, 10 de agosto de 2008 23:10