Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786

    Validare e inviare un form a + Pagine

    Salve,

    ho un file esterno .js, per il controllo del form dati.

    vorrei fare in modo di fare un solo file *.js, ma che mi permetta di inviare le informazioni a deverse pagine.

    in parole semplici vorrei portare questo pezzo di scritp sulla pagina dove c'è il modulo con incluso in file js.

    codice:
            //INVIA IL MODULO
            else {
               document.modulo.action = "elabora_dati.asp";
               document.modulo.submit();
            }
    in modo che posso cambiare la pagina "elabora_dati.asp" a secondo della pagina form.

    si può fare ?

    grazie !

    codice:
      function Modulo() {
         // Variabili associate ai campi del modulo
         var nome = document.modulo.nome.value;
         var cognome = document.modulo.cognome.value;
         var nickname = document.modulo.nickname.value;
         var password = document.modulo.password.value;
         var conferma = document.modulo.conferma.value;
         var nascita = document.modulo.nascita.value;
         var citta = document.modulo.citta.options[document.modulo.citta.selectedIndex].value;
         var indirizzo = document.modulo.indirizzo.value;
         var telefono = document.modulo.telefono.value;
         var email = document.modulo.email.value;
         var homepage = document.modulo.homepage.value;
         var firma = document.modulo.firma.value;
         // Espressione regolare dell'email
         var email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
            //Effettua il controllo sul campo NOME
            if ((nome == "") || (nome == "undefined")) {
               alert("Il campo Nome è obbligatorio.");
               document.modulo.nome.focus();
               return false;
            }
            //Effettua il controllo sul campo COGNOME
            else if ((cognome == "") || (cognome == "undefined")) {
               alert("Il campo Cognome è obbligatorio.");
               document.modulo.cognome.focus();
               return false;
            }
            //Effettua il controllo sul campo NICKNAME
            else if ((nickname == "") || (nickname == "undefined")) {
               alert("Il campo Nickname è obbligatorio.");
               document.modulo.nickname.focus();
               return false;
            }
            //Effettua il controllo sul campo PASSWORD
            else if ((password == "") || (password == "undefined")) {
               alert("Il campo Password è obbligatorio.");
               document.modulo.password.focus();
               return false;
            }
            //Effettua il controllo sul campo CONFERMA PASSWORD
            else if ((conferma == "") || (conferma == "undefined")) {
               alert("Il campo Conferma password è obbligatorio.");
               document.modulo.conferma.focus();
               return false;
            }
            //Verifica l'uguaglianza tra i campi PASSWORD e CONFERMA PASSWORD
            else if (password != conferma) {
               alert("La password confermata è diversa da quella scelta, controllare.");
               document.modulo.conferma.value = "";
               document.modulo.conferma.focus();
               return false;
            }
            //Effettua il controllo sul campo DATA DI NASCITA
            else if (document.modulo.nascita.value.substring(2,3) != "/" ||
               document.modulo.nascita.value.substring(5,6) != "/" ||
               isNaN(document.modulo.nascita.value.substring(0,2)) ||
               isNaN(document.modulo.nascita.value.substring(3,5)) ||
               isNaN(document.modulo.nascita.value.substring(6,10))) {
                 alert("Inserire nascita in formato gg/mm/aaaa");
                  document.modulo.nascita.value = "";
                  document.modulo.nascita.focus();
                  return false;
            }
            else if (document.modulo.nascita.value.substring(0,2) > 31) {
               alert("Impossibile utilizzare un valore superiore a 31 per i giorni");
               document.modulo.nascita.select();
               return false;
            }
            else if (document.modulo.nascita.value.substring(3,5) > 12) {
               alert("Impossibile utilizzare un valore superiore a 12 per i mesi");
               document.modulo.nascita.value = "";
               document.modulo.nascita.focus();
               return false;
            }
            else if (document.modulo.nascita.value.substring(6,10) < 1900) {
               alert("Impossibile utilizzare un valore inferiore a 1900 per l'anno");
               document.modulo.nascita.value = "";
               document.modulo.nascita.focus();
               return false;
            }
            //Effettua il controllo sul campo CITTA'
            else if ((citta == "") || (citta == "undefined")) {
              alert("Il campo Città è obbligatorio.");
              document.modulo.citta.focus();
              return false;
            }
            //Effettua il controllo sul campo INDIRIZZO
            else if ((indirizzo == "") || (indirizzo == "undefined")) {
               alert("Il campo Indirizzo è obbligatorio.");
               document.modulo.indirizzo.focus();
               return false;
            }
            //Effettua il controllo sul campo TELEFONO
            else if ((isNaN(telefono)) || (telefono == "") || (telefono == "undefined")) {
               alert("Il campo Telefono è numerico ed obbligatorio.");
               document.modulo.telefono.value = "";
               document.modulo.telefono.focus();
               return false;
            }
            else if (!email_reg_exp.test(email) || (email == "") || (email == "undefined")) {
               alert("Inserire un indirizzo email corretto.");
               document.modulo.email.select();
               return false;
            }
            //Effettua il controllo sul campo HOMEPAGE
            else if ((homepage == "") || (homepage == "undefined") || (homepage.indexOf("http://") == (-1))) {
               alert("Il campo Homepage non può essere privo di http://");
               document.modulo.homepage.value = "http://";
               document.modulo.homepage.select();
               return false;
            }
            //Effettua il controllo sul campo FIRMA
            else if ((firma == "") || (firma == "undefined") || (firma.indexOf("Inserisci qui il tuo slogan!") != (-1))) {
               alert("Il campo Firma è obbligatorio e non si può inserire la scritta predefinita.");
               document.modulo.firma.focus();
               return false;
            }
            //INVIA IL MODULO
            else {
               document.modulo.action = "elabora_dati.asp";
               document.modulo.submit();
            }
      }
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  2. #2
    Ciao,
    perche' non passi la pagina a cui inviare il form come parametro della funzione?
    codice:
    Function Modulo (pagina)
    .....
    .....
    .....
    .....
    else {
               document.modulo.action = pagina ;
               document.modulo.submit();
            }
    Che ne dici?

  3. #3
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao unreg,

    puoi parametrizzare la funzione così
    codice:
    function Modulo(destinazione) {
    ...
    ...
    ..
    //INVIA IL MODULO
            else {
               document.modulo.action = destinazione;
               document.modulo.submit();
            }
    }

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    hehehe quasi contemporaneamente... meglio 2 risposte uguali che neanche una

  5. #5

    eh gia!

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    ho un problema

    ho fatto un links così:

    codice:
    Invia
    e mi da questo errore: 'modulo_nuovo_prodotto_2' non è definito

    come mai ?

    grazie !

    p.s. il js e ok
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
    Invia
    mancano gli apici per delimitare il parametro stringa

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    grazie mille
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

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.