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

    problema con javascript

    Ho realizzato questa funziona per il controllo di alcuni campi


    codice:
    function invia_modifica()
    {
    	var lungh_login = document.mod_prof.login.value.length;
    	var lungh_pswd = document.mod_prof.password.value.length;
    	var lungh_pswd1 = document.mod_prof.password1.value.length;
    
    	if(lungh_login < 5)
    	{
    		alert('La "Login" deve essere di almeno 5 caratteri.');
    		document.mod_prof.login.focus();
    		} else if (lungh_pswd < 6) {
    			alert('La "Password" deve essere di almeno 6 caratteri.');
    		document.mod_prof.pswd.focus();
    		} else if (lungh_pswd1 < 6) {
    			alert('La "Password di conferma" deve essere di almeno 6 caratteri.');
    		document.mod_prof.pswd1.focus();
    		} else if (lungh_pswd != lungh_pswd1) {
    			alert('Le "Password" inserite non sono identiche.');
    	}
    }
    nel tag form ho messo:

    codice:
    <form onSubmit="return invia_modifica();" action="profilo_cambia.php" name="mod_prof" method="post">
    da parte di javascript non c'è nessun errore, il problema è che dopo il messaggio di errore da parte del campo login che mi avvisa di avere inserito meno di 5 caratteri, mi parte la pagina "profilo_cambia.php" invece di rimanere sulla pagina finché tutto non è corretto.

    Dov'è l'errore? :master:

  2. #2
    codice:
    function invia_modifica()
    {
    	var lungh_login = document.mod_prof.login.value.length;
    	var lungh_pswd = document.mod_prof.password.value.length;
    	var lungh_pswd1 = document.mod_prof.password1.value.length;
    
    	if(lungh_login < 5)
    	{
    		alert('La "Login" deve essere di almeno 5 caratteri.');
    		document.mod_prof.login.focus();
                    return false;
    		} else if (lungh_pswd < 6) {
    			alert('La "Password" deve essere di almeno 6 caratteri.');
    		document.mod_prof.pswd.focus();
                    return false;
    		} else if (lungh_pswd1 < 6) {
    			alert('La "Password di conferma" deve essere di almeno 6 caratteri.');
    		document.mod_prof.pswd1.focus();
                    return false;
    		} else if (lungh_pswd != lungh_pswd1) {
    			alert('Le "Password" inserite non sono identiche.');
                    return false; }
    return true;
    	}
    ciao

  3. #3
    Ho fatto come dici ma dopo avere dato ok al messaggio che faccio comparire in caso di errore continua ad andare alla pagina profilo_cambia.php

  4. #4
    codice:
    function invia_modifica(){
    
    var lungh_login = document.mod_prof.login.value.length;
    var lungh_pswd = document.mod_prof.password.value.length;
    var lungh_pswd1 = document.mod_prof.password1.value.length;
    
    if(lungh_login < 5) {
     alert('La "Login" deve essere di almeno 5 caratteri.');
     document.mod_prof.login.focus();
     return false;
    }
    if(lungh_pswd < 6) {
     alert('La "Password" deve essere di almeno 6 caratteri.');
     document.mod_prof.pswd.focus();
     return false;
    }
    if(lungh_pswd1 < 6) {
     alert('La "Password di conferma" deve essere di almeno 6 caratteri.');
     document.mod_prof.pswd1.focus();
     return false;
    }
    if(lungh_pswd != lungh_pswd1) {
     alert('Le "Password" inserite non sono identiche.');
     return false;
    }
    return true;
    }
    prova così

  5. #5
    Niente da fare, continua a non funzionare. Certo che è assurdo, ho trovato una vecchia pagina in cui vi è lo stesso script e lì funziona.

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    quale dei nomi dei campi e' quello reale?

    codice:
    var lungh_login = document.mod_prof.login.value.length;
    var lungh_pswd = document.mod_prof.password.value.length;
    var lungh_pswd1 = document.mod_prof.password1.value.length;
    
    if(lungh_login < 5) {
     alert('La "Login" deve essere di almeno 5 caratteri.');
     document.mod_prof.login.focus();
     return false;
    }
    if(lungh_pswd < 6) {
     alert('La "Password" deve essere di almeno 6 caratteri.');
     document.mod_prof.pswd.focus();
     return false;
    }
    if(lungh_pswd1 < 6) {
     alert('La "Password di conferma" deve essere di almeno 6 caratteri.');
     document.mod_prof.pswd1.focus();
     return false;
    }
    if(lungh_pswd != lungh_pswd1) {
     alert('Le "Password" inserite non sono identiche.');
     return false;
    }
    return true;
    }
    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

  7. #7
    Originariamente inviato da br1
    quale dei nomi dei campi e' quello reale?
    Entrambi, sono due perché verifico che l'utente abbia inserito correttamente la password.

    Ho provato a togliere il comando onSubmit dalla form e il controllo avviene perfettamente, solo che se tutto è regolare non parte l'invio dei dati.

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da Bartjsp
    Entrambi, sono due perché verifico che l'utente abbia inserito correttamente la password.

    Ho provato a togliere il comando onSubmit dalla form e il controllo avviene perfettamente, solo che se tutto è regolare non parte l'invio dei dati.
    volevo farti notare che in diversi punti dello script utilizzi 2 nomi diversi per lo stesso campo del form... in particolare "password" e "pswd" per un campo e "password1" e "pswd1" per l'altro...

    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
    Ah, scusami. Ho capito, forse con la mattinata sto ancora dormendo.

    Perfetto, adesso funziona tutto.
    Ringrazzio anche var per il suo tempo concessomi.

    Ti ringrazio.

  10. #10
    Originariamente inviato da Bartjsp
    Ah, scusami. Ho capito, forse con la mattinata sto ancora dormendo. :sonno:

    Perfetto, adesso funziona tutto. :D
    Ringrazzio anche var per il suo tempo concessomi.

    Ti ringrazio. :ciauz:
    siamo qui per questo. ;)

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