Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    sempre problemi con onsubmit

    Scusate non riesco a far funzionare solo questo script. Se li lascio separati funzionano, ma se li concateno mi controlla solo l'email. Con il secondo script vado a prendere i messaggi da dire all'utente e me li apro in una pop-up. Si guramente sbaglierò la concatenazione. Aiuto please

    <script>

    function controlloemail(form){
    /*document.form.email.value = document.form.email.value.toLowerCase();*/
    var email = form.email.value
    if (email.indexOf('@', 0) == -1 || email.indexOf('.', 0) == -1){
    alert("L'e-mail inserita non è valida!")
    form.email.focus();
    return true;
    }
    }
    </script>

    <script TYPE="text/javascript">
    <!--
    function popupform(myform, windowname)
    {
    if (! window.focus)return true;
    window.open('', windowname, 'height=480,width=640,scrollbars=yes');
    myform.target=windowname;
    return true;
    }
    //-->
    </script>



    <html>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>default</title>
    </head>

    <body>
    <form name="form_mailing" method="post" action="iscrizione.asp" onsubmit="if( controlloemail(this) ) return popupform(this, 'join'); else return false;" ">

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    La funzien controlloemail() ha un problema, ma non per questo dovrebbe impedire la funzione successiva.
    La funzione popupform, invece, ha un controllo che non capisco, e che quindi ho tolto (poi quando il resto funzine puoi provare a reinserirlo).
    Ho aggiunto degli alert, che tipermettono di verificare se la successione delle operazioni e` corretta.

    codice:
    <script type="text/javascript">
    function controlloemail(myform){ // form e` parola riservata
      var email = myform.email.value;
      if (email.indexOf('@', 0) == -1 || email.indexOf('.', 0) == -1){
        alert("L'e-mail inserita non è valida!")
        myform.email.focus();
        return false;
      }
      return true;
    } 
    
    function popupform(myform, windowname) {
      //if (! window.focus() ) return false; // nota i cambiamenti
      alert("sto per aprire la finestra");
      window.open('', windowname, 'height=480,width=640,scrollbars=yes');
      myform.target=windowname;
      return true;
    } 
    </script>
    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    mi apre sempre la pagina con i messaggi e poi mi apre la pop-up senza scrivere nulla

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Prova a scrivere il target dentro il tag form (togliendolo dalla funzione) - magari e` un problema di tempi di reazione:

    <form name="form_mailing" method="post" target="join" action="iscrizione.asp" onsubmit="if( controlloemail(this) ) return popupform(this, 'join'); else return false;" ">

    function popupform(myform, windowname) {
    window.open('', windowname, 'height=480,width=640,scrollbars=yes');
    alert("ho aperto la finestra");
    return true;
    }

    Oppure, meglio:

    <form name="form_mailing" method="post" target="join" action="iscrizione.asp" onsubmit="if( controlloemail(this) ) window.open('', 'join', 'height=480,width=640,scrollbars=yes'); else return false;">

    (togliendo la seconda funzione)


    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    adesso non apre la pop-up ci rinuncio

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.