Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187

    Funzione e-mail non funziona

    Ciao a tutti,
    grazie a voi ho fatto (voi! ) questa funzione per il controllo della mail in un form:
    codice:
    <SCRIPT language=JavaScript>
    <!--
    function winopen1(form){
      if (form.newsletter.value.length < 2) {
    	alert("L'indirizzo di posta elettronica deve contenere almeno due caratteri!.")
    	form.newsletter.focus();
    	return false
      }
    
      miaStringa = form.newsletter.value;
      if (miaStringa.indexOf("@")==(-1)  || miaStringa.indexOf(".")==(-1)) {
    	alert("Inserisci un indirizzo e-mail valido!.")
    	form.newsletter.focus();
    	return false
      }
    
      miaStringa1 = form.newsletter.value;
      if (!miaStringa1.match(/^\w+\@(\w+\.)+\w{2,4}$/) {
        alert("Inserisci un indirizzo e-mail valido!.")
        form.newsletter.focus();
        return false
      } 
    
      win1=window.open ("", "click1", "history=no,resizable=no,status=no,scrollbars=no,menubar=no,width=300,height=250");
    }
    
    //-->
    </SCRIPT>
    Ora tutto funziona, tranne se inserisco la funzione evidenziata, che tra l'atro è quella che mi serve di più in quanto blocca a 4 i caratteri dopo il punto... come mai cosa c'è che gli dà fastidio secondo voi?
    :master:

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133

    Re: Funzione e-mail non funziona

    Originariamente inviato da nadia79
    Ciao a tutti,
    grazie a voi ho fatto (voi! ) questa funzione per il controllo della mail in un form:
    codice:
    <SCRIPT language=JavaScript>
    <!--
    function winopen1(form){
      if (form.newsletter.value.length < 2) {
    	alert("L'indirizzo di posta elettronica deve contenere almeno due caratteri!.")
    	form.newsletter.focus();
    	return false
      }
    
      miaStringa = form.newsletter.value;
      if (miaStringa.indexOf("@")==(-1)  || miaStringa.indexOf(".")==(-1)) {
    	alert("Inserisci un indirizzo e-mail valido!.")
    	form.newsletter.focus();
    	return false
      }
    
      miaStringa1 = form.newsletter.value;
      if (!miaStringa1.match(/^\w+\@(\w+\.)+\w{2,4}$/) {
        alert("Inserisci un indirizzo e-mail valido!.")
        form.newsletter.focus();
        return false
      } 
    
      win1=window.open ("", "click1", "history=no,resizable=no,status=no,scrollbars=no,menubar=no,width=300,height=250");
    }
    
    //-->
    </SCRIPT>
    Ora tutto funziona, tranne se inserisco la funzione evidenziata, che tra l'atro è quella che mi serve di più in quanto blocca a 4 i caratteri dopo il punto... come mai cosa c'è che gli dà fastidio secondo voi?
    :master:
    prova cosi:

    codice:
    <SCRIPT language=JavaScript>
    <!--
    function winopen1(modulo){
      if (modulo.newsletter.value.length < 2) {
    	alert("L'indirizzo di posta elettronica deve contenere almeno due caratteri!.")
    	docuemnt.modulo.newsletter.focus();
    	return false
      }
    
      miaStringa1 = modulo.newsletter.value;
      if (!miaStringa1.match(^[\w\.-]+@[\w\.-]+\.[a-z]{2,3}$/) {
        alert("Inserisci un indirizzo e-mail valido!.")
        modulo.newsletter.focus();
        return false
      } 
    
      win1=window.open ("", "click1", "history=no,resizable=no,status=no,scrollbars=no,menubar=no,width=300,height=250");
    }
    
    //-->
    </SCRIPT>
    Nel esempio la regexp verifica sia la @ e l'estensione (com, net, it, ecc) ho cambiato il nome form con modulo perchè la parola form e una parola riservata.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187
    Niente... :master:
    ho inserito lo script modificato da te, ma non funziona ugualmente!
    Posto il codice del form, forse c'è qualche errore che io non vedo:

    codice:
    <form action="pages/newsletter.asp" method="post" name="modulo" target="click1" id="modulo" onSubmit="return winopen1(this);">
    <tr><td><input name="newsletter" type="text" id="newsletter" onFocus="if(this.value==this.defaultValue) this.value='';" /></td></tr>
    <tr><td></td></tr>
    <tr><td> <div align="center"><input type="submit" name="submit" value="Iscriviti" /></div></td></tr>
    </form>
    e questo lo script inserito tra <head></head>

    codice:
    <SCRIPT language=JavaScript>
    <!--
    function winopen1(modulo){
      if (modulo.newsletter.value.length < 2) {
    	alert("L'indirizzo di posta elettronica deve contenere almeno due caratteri!.")
    	docuemnt.modulo.newsletter.focus();
    	return false
      }
    
      miaStringa1 = modulo.newsletter.value;
      if (!miaStringa1.match(^[\w\.-]+@[\w\.-]+\.[a-z]{2,3}$/) {
        alert("Inserisci un indirizzo e-mail valido!.")
        modulo.newsletter.focus();
        return false
      } 
    
      win1=window.open ("", "click1", " history=no,resizable=no,status=no,scroll
    bars=no,menubar=no,width=300,height=250");
    }
    
    //-->
    </SCRIPT>

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da nadia79
    Niente... :master:
    ho inserito lo script modificato da te, ma non funziona ugualmente!
    Posto il codice del form, forse c'è qualche errore che io non vedo:

    codice:
    <form action="pages/newsletter.asp" method="post" name="modulo" target="click1" id="modulo" onSubmit="return winopen1(this);">
    <tr><td><input name="newsletter" type="text" id="newsletter" onFocus="if(this.value==this.defaultValue) this.value='';" /></td></tr>
    <tr><td></td></tr>
    <tr><td> <div align="center"><input type="submit" name="submit" value="Iscriviti" /></div></td></tr>
    </form>
    e questo lo script inserito tra <head></head>

    codice:
    <SCRIPT language=JavaScript>
    <!--
    function winopen1(modulo){
      if (modulo.newsletter.value.length < 2) {
    	alert("L'indirizzo di posta elettronica deve contenere almeno due caratteri!.")
    	docuemnt.modulo.newsletter.focus();
    	return false
      }
    
      miaStringa1 = modulo.newsletter.value;
      if (!miaStringa1.match(^[\w\.-]+@[\w\.-]+\.[a-z]{2,3}$/) {
        alert("Inserisci un indirizzo e-mail valido!.")
        modulo.newsletter.focus();
        return false
      } 
    
      win1=window.open ("", "click1", " history=no,resizable=no,status=no,scroll
    bars=no,menubar=no,width=300,height=250");
    }
    
    //-->
    </SCRIPT>
    prova cosi:
    codice:
    <SCRIPT language=JavaScript>
    <!--
    function winopen1(){
      miaStringa1 = document.modulo.newsletter.value;
      if (miaStringa1.length < 2) {
    	alert("L'indirizzo di posta elettronica deve contenere almeno due caratteri!.")
    	document.modulo.newsletter.focus();
    	return false
      }else if(!miaStringa1.match(/^[\w\.-]+@[\w\.-]+\.[a-z]{2,3}$/) {
        alert("Inserisci un indirizzo e-mail valido!.")
        document.modulo.newsletter.focus();
        return false
      } 
    
      win1=window.open ("", "click1", "  history=no,resizable=no,status=no,scroll
    
    bars=no,menubar=no,width=300,height=250");
    }
    
    //-->
    </SCRIPT>
    richiamo:
    codice:
    <form action="pages/newsletter.asp" method="post" name="modulo" target="click1" id="modulo" onSubmit="return winopen1();">
    <tr><td><input name="newsletter" type="text" id="newsletter" onFocus="if(this.value==this.defaultValue) this.value='';" /></td></tr>
    <tr><td></td></tr>
    <tr><td> <div align="center"><input type="submit" name="submit" value="Iscriviti" /></div></td></tr>
    </form>
    Nel caso non funzionasse descrive l'eventuale errore, e nel caso non dia nessun errore cose che non va, maggiori informazioni fornisci miglio è.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Ciao Nadia79,

    hai risolto il problema dell'e-mail?

    A me funziona inserendo questo script.

    }

    var emai = formobj.elements["email"].value;
    if(!emai.match(/[\w\.\-]+\@(\w+\.)+\w{2,4}/)) {
    alert("dato E-mail non corretto");
    formobj.elements["email"].focus();
    return false;

    }


    ma richiede sempre l'inserimento obbligatorio dell'email altrimenti esce la finestrina alert.
    Io vorrei che l'email fosse non obbligatoria, MA se viene inserita deve essere inserita correttamente.

    Tu sai come fare per non renderla obbligatoria?

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da Altalos
    Ciao Nadia79,

    hai risolto il problema dell'e-mail?

    A me funziona inserendo questo script.

    }

    var emai = formobj.elements["email"].value;
    if(!emai.match(/[\w\.\-]+\@(\w+\.)+\w{2,4}/)) {
    alert("dato E-mail non corretto");
    formobj.elements["email"].focus();
    return false;

    }


    ma richiede sempre l'inserimento obbligatorio dell'email altrimenti esce la finestrina alert.
    Io vorrei che l'email fosse non obbligatoria, MA se viene inserita deve essere inserita correttamente.

    Tu sai come fare per non renderla obbligatoria?
    Prova cosi:
    codice:
    var emai = formobj.elements["email"].value;
            if(formobj.elements["email"].value!=""){               
    	if(!emai.match(/[\w\.\-]+\@(\w+\.)+\w{2,4}/)) { 
    		alert("dato E-mail non corretto"); 
    		formobj.elements["email"].focus(); 
    		return false;   
    	
    	}
    }
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187
    Per il momento rinuncio,
    non mi dà semplicemente nessun errore, quindi non so neanche cosa andare a vedere esattamente!

    Il codice è quello che ho postato! Veramente non capisco è assurdo! :master:

    Provo più tardi a rivedere con calma il codice...

    Cmq grazie

  8. #8
    Originariamente inviato da nadia79
    Per il momento rinuncio,
    non mi dà semplicemente nessun errore, quindi non so neanche cosa andare a vedere esattamente!

    Il codice è quello che ho postato! Veramente non capisco è assurdo! :master:

    Provo più tardi a rivedere con calma il codice...

    Cmq grazie
    ho dato un'occhiata al codice che hai postato e mancava il carattere di apertura della regexp e una tonda di chiusura dell'if (magari è dovuto solo al copia incolla..). Messi quelli a me funziona.
    codice:
    if (!miaStringa1.match(/^[\w\.-]+@[\w\.-]+\.[a-z]{2,3}$/)) {
    vedi se era quello.
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.