Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di flash20
    Registrato dal
    Dec 2003
    Messaggi
    567

    Controllo validità e-mail con Javascript

    Ciao a tutti, ho cercato nelle altre discussioni al mio problema, ma non riesco a venirne a capo. Premetto che non conosco javascipt, ho bisogno di verificare che l'indirizzo e-mail inserito in un form sia valido, ho trovato diversi script, ma non riesco a farne funzionare nemmeno uno. Tra tutti uno mi da il messaggio di Alert, ma quando clicco su ok mi inoltra ugualmente il form, vi posto il codice potete vedere dov'è l'errore?

    Grazie mille

    codice:
    <SCRIPT language="javascript">
    
    function ch(f,e) {
    
    var ok=true;
    
    var a=document.forms[f].elements[e];
    
    var pe=a.value.indexOf('.');
    var ss=a.value.indexOf(' ');
    var lch=a.value.length-1;
    var atr=a.value.indexOf('@');
    var att=atr+1;
    
    var sq=a.value.substring(0,atr); 
    var sw=a.value.substring(atr,pe); 
    var se=a.value.substring(pe,lch);
    
    if((atr<1) || (pe<=att) || (pe==lch) || (pe<1)  || (ss != -1) || (sq.length<=2) || (sw.length<=3) || (se.length<=1)) {
    
    alert("Email non valida");
    }
    }
    
    </SCRIPT>

    codice:
     
      <form id="form" name="form" method="post" action="iscrizione.asp" >
             <input type="text" name="news" id="news"/>
          <input type="submit" name="button2" id="button2" value="Iscriviti" onClick="ch('0','0')"/>
      </form>

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Prova cosi:
    codice:
    function ch(f,e) {
    
    var ok=true;
    
    var a=document.forms[f].elements[e];
    
    var pe=a.value.indexOf('.');
    var ss=a.value.indexOf(' ');
    var lch=a.value.length-1;
    var atr=a.value.indexOf('@');
    var att=atr+1;
    
    var sq=a.value.substring(0,atr); 
    var sw=a.value.substring(atr,pe); 
    var se=a.value.substring(pe,lch);
    
    if((atr<1) || (pe<=att) || (pe==lch) || (pe<1)  || (ss != -1) || (sq.length<=2) || (sw.length<=3) || (se.length<=1)) {
    alert("Email non valida");
    return false;
    }
    }
    che richiami cosi:
    codice:
     <form id="form" name="form" method="post" action="iscrizione.asp" onsubmit="return ch('0','0')" >
             <input type="text" name="news" id="news"/>
          <input type="submit" name="button2" id="button2" value="Iscriviti" />
      </form>
    Ho considerato che lo script funzionasse e non l'ho testato.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di flash20
    Registrato dal
    Dec 2003
    Messaggi
    567
    Con queste modifiche mi segna che la mail non è valida e non mi inoltra il form come volevo, però ho notato che mi dice mail non valida per qualsiasi cosa scrivo, ovvero se scrivo una mail formalmente corretta non l'accetta, nella pagina da cui ho preso lo script però funziona, (lo script l'ho preso qui:DEMO CONTROLLO MAIL

    Grazie

  4. #4
    Utente di HTML.it L'avatar di flash20
    Registrato dal
    Dec 2003
    Messaggi
    567
    Avete consigli???

  5. #5
    Originariamente inviato da flash20
    Avete consigli???
    ciao, dovresti pubblicare il codice completo della pagina che riporta errori.

    saluti

  6. #6
    Utente di HTML.it L'avatar di flash20
    Registrato dal
    Dec 2003
    Messaggi
    567
    Vi riporto di seguito il codice:

    codice:
    <SCRIPT language="javascript">
    
    function ch(f,e) {
    
    var ok=true;
    
    var a=document.forms[f].elements[e];
    
    var pe=a.value.indexOf('.');
    var ss=a.value.indexOf(' ');
    var lch=a.value.length-1;
    var atr=a.value.indexOf('@');
    var att=atr+1;
    
    var sq=a.value.substring(0,atr); 
    var sw=a.value.substring(atr,pe); 
    var se=a.value.substring(pe,lch);
    
    if((atr<1) || (pe<=att) || (pe==lch) || (pe<1)  || (ss != -1) || (sq.length<=2) || (sw.length<=3) || (se.length<=1)) {
    alert("Email non valida");
    return false;
    }
    }
    </SCRIPT>
    codice:
    <form  id="form" name="form" method="post" action="iscrizione.asp" onsubmit="return ch('0','0')">
       <input type="text" name="news" id="news"/>
       <input type="submit" name="button2" id="button2" value="Iscriviti"/>
    </form>
    Mi da e-mail non valida anche quando è scritta formalmente corretta.

    Grazie

  7. #7
    Taglia la testa al toro: usa le regular expressions:
    codice:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Test eMail</title>
    <script type="text/javascript">
    function checkEmail(theForm) {
        var re = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/
        if (re.test(theForm.news.value))
            return true;
        alert("l'eMail \"" + theForm.news.value + "\" NON \u00c8 valida!");
        return false;
    }
    </script>
    </head>
    <body>
    <form  id="form" name="form" method="post" action="iscrizione.asp" onsubmit="checkEmail(this)">
    Email:
    
    <input type="text" name="news" />
    
    
    <input type="submit" value="Invia" />
    </form>
    </body>
    </html>
    Buttata gi&ugrave; velocemente. Adattala al tuo caso!
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  8. #8
    Utente di HTML.it L'avatar di flash20
    Registrato dal
    Dec 2003
    Messaggi
    567
    L'ho messo ma torno al primo problema, se la mail è formalmente corretta inoltra il form, se non lo è mi da il messaggio di alert, ma quando clicco su ok lo inoltra lo stesso.


  9. #9
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Aggiungi il return alla funzione cosi : onsubmit="return checkEmail(this)"
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  10. #10
    Utente di HTML.it L'avatar di flash20
    Registrato dal
    Dec 2003
    Messaggi
    567
    FUNZIONA

    Finalemente risolto il problema, grazie mille a tutti, come al solito siete preziosi.


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.