Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Controllo su più form

  1. #1
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757

    Controllo su più form

    Ciao.

    In una pagina htm ho previsto tre diversi form che puntano a tre diverse pagine asp:
    codice:
    <form name="Qform1" action="processadati1.asp" onSubmit="return CheckForm();"> 
    <input type="text" name="NomeCampo1" size="20"> 
    <input type="submit" value="Invia"> 
    </form>
     
    <form name="Qform2" action="processadati2.asp" onSubmit="return CheckForm();"> 
    <input type="text" name="NomeCampo2" size="20"> 
    <input type="submit" value="Invia"> 
    </form> 
     
    <form name="Qform3" action="processadati3.asp" onSubmit="return CheckForm();"> 
    <input type="text" name="NomeCampo3" size="20"> 
    <input type="submit" value="Invia"> 
    </form>
    Adesso, dovrei rendere obbligatoria la compilazione di ciascuna delle input type="text" dei singoli form, se si vuole inviare la richiesta alla relativa pagina asp.

    Per fare questo controllo devo necessariamente scrivere per tre volte la stessa funzione di controllo campo, ogni volta cambiando il nome del form e della funzione o esiste una soluzione alternativa meno grossolana ?

    In sostanza, devo scrivere questa funzione per tre volte cambiando ogni volta, il nome della funzione ed il valore di document ??? :
    codice:
    <SCRIPT  language="JavaScript">
    <!--
    	
    function CheckForm () { 
    
    	var errorMsg = "";
    
    	if (document.Qform1.NomeCampo1.value == ""){
    		errorMsg += "Il campo NomeCampo1 è un campo obbligatorio";	
    	}
    	
    		
    	if (errorMsg != ""){
    		msg = "";
    		msg += "Problemi nella compilazione del form.\n";
    		msg += "Per favore correggere i campi errati.\n";
    		msg += "";
    		msg += "Il seguente campo/i deve essere corretto:\n";
    		
    		errorMsg += alert(msg + errorMsg + "\n\n");
    		return false;
    	}
    	
    	return true;
    }
    // -->
    </script>
    GRAZIE !
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    puoi modificare la funzione così
    codice:
    function CheckForm (ff,NomeCampo) { 
    
    	var errorMsg = "";
    
    	if (ff.elements[NomeCampo].value == ""){
    		errorMsg += "Il campo NomeCampo1 è un campo obbligatorio";	
    	}
    	
    		
    	if (errorMsg != ""){
    		msg = "";
    		msg += "Problemi nella compilazione del form.\n";
    		msg += "Per favore correggere i campi errati.\n";
    		msg += "";
    		msg += "Il seguente campo/i deve essere corretto:\n";
    		
    		errorMsg += alert(msg + errorMsg + "\n\n");
    		return false;
    	}
    	
    	return true;
    }
    e richiamarla così
    codice:
    onSubmit="return CheckForm(this,'NomeCampo1');

  3. #3
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Grazie WillyBit, la tua soluzione è perfetta.

    Solo una nota:

    Il msg di errore restituito è genericamente sempre lo stesso per tutti i tre form:
    codice:
    "Il campo NomeCampo1 è un campo obbligatorio"
    In realtà il nome dei campi è NomeCampo1, NomeCampo2 e NomeCampo3.

    E' possibile personalizzare il msg di errore con il nome del campo obbligatorio ?
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    function CheckForm (ff,NomeCampo) {

    var errorMsg = "";

    if (ff.elements[NomeCampo].value == ""){
    errorMsg += "Il campo '+NomeCampo+' è un campo obbligatorio";
    }


    if (errorMsg != ""){
    msg = "";
    msg += "Problemi nella compilazione del form.\n";
    msg += "Per favore correggere i campi errati.\n";
    msg += "";
    msg += "Il seguente campo/i deve essere corretto:\n";

    errorMsg += alert(msg + errorMsg + "\n\n");
    return false;
    }

    return true;
    }

  5. #5
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Grazie ma non va, restituisce:

    codice:
    Il campo '+ NomeCampo +' è obbligatorio
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  6. #6
    hai provato cosi?

    codice:
    function CheckForm (ff,NomeCampo) { 
    
    var errorMsg = ""; 
    
    if (ff.elements[NomeCampo].value == ""){ 
    errorMsg += "Il campo '+NomeCampo+' è un campo obbligatorio"; 
    } 
    
    
    if (errorMsg != ""){ 
    msg = ""; 
    msg += "Problemi nella compilazione del form.\n"; 
    msg += "Per favore correggere i campi errati.\n"; 
    msg += ""; 
    msg += "Il seguente campo/i deve essere corretto:\n"; 
    
    errorMsg += alert(msg + errorMsg + "\n\n"); 
    return false; 
    } 
    
    return true; 
    }
    Ciao!

  7. #7
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Si, ma non va lo stesso... provate voi stessi:

    http://www35.websamba.com/viki-1967/MultiploForm2.htm
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Cambia gli apici di questa riga:
    codice:
    errorMsg += "Il campo '+NomeCampo+' è un campo obbligatorio";
    con le virgolette "" cosi:
    codice:
    errorMsg += "Il campo "+NomeCampo+" è un campo obbligatorio";
    Cosi funziona.
    Ciao
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757
    Adesso si funziona, grazie e buona domenica.
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  10. #10
    Originariamente inviato da cavicchiandrea
    Cambia gli apici di questa riga:
    codice:
    errorMsg += "Il campo '+NomeCampo+' è un campo obbligatorio";
    con le virgolette "" cosi:
    codice:
    errorMsg += "Il campo "+NomeCampo+" è un campo obbligatorio";
    Cosi funziona.
    Ciao
    ops...
    mi sono dimenticato di cambiare gli apici nella mia risposta!!

    ovviamente era quello che ti volevo dire!!
    Ciao!

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