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

    problemi di validazione form

    Salve a tutti,
    Sto creando un nuovo CMS OpenSource di cuoi ho messo on-line la prima bozza del core solo ieri.
    La release ha però un problema di validazione JS sui form che mi fa impazzire e non riesco a risolvere. Il CMS genere in automatico il codice JS necessario per la validazione del form, i metodi di validazione dei singoli campi funzionano (prima dell'if finale ho provato a usare anche un alert e mi restituisce errore se una validazione fallisce) ma il form viene spedito ugualmente... copio qui il codice generato per la validazione di un form:

    codice:
    <script language="JavaScript" type="text/javascript">
    
    function validate_UTEN() {
    var sendForm = true;
    sendForm = sendForm && testObbligatorio_nome_utente();
    sendForm = sendForm && testObbligatorio_cognome();
    sendForm = sendForm && testPassword_pass();
    sendForm = sendForm && testRegExp_email();
    if(sendForm) {
    	document.UTEN.submit();
    }
    
    function testObbligatorio_nome_utente() {
    var campo = document.UTEN.nome_utente;
    if (campo.value.length == 0) {
        alert("Nome obbligatorio");
        campo.focus;
        return false;
    }
    return true;
    }
    
    function testObbligatorio_cognome() {
    var campo = document.UTEN.cognome;
    if (campo.value.length == 0) {
        alert("Cognome obbligatorio");
        campo.focus;
        return false;
    }
    return true;
    }
    
    function testPassword_pass() {
    var campo = document.UTEN.pass;
    var campo2 = document.UTEN.pass2;
    if (campo.value == "" || campo.value != campo2.value) {
        alert("La password è obbligatoria, o la password di verifica è sbagliata");
        campo.focus;
        return false;
    }
    return true;
    }
    
    function testRegExp_email() {
    var campo = document.UTEN.email;
    var espressione = /^[a-zA-Z0-9._%-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    if (!campo.value.match(espressione)) {
        alert("Email non corretta");
        campo.focus;
        return false;
    }
    return true;
    }
    
    </script>

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    come richiami validate_UTEN()?
    l'idealea sarebbe che quella funzione restituisse true o false per poi richiamarla così nel form
    codice:
    <form onsubmit="return validate_UTEN()">

  3. #3
    ho risolto ora
    validate_UTEN() la chiamavo con

    <button onClick="javascript:validate_UTEN()">Salva</button>

    ho provato ad aggiungere

    <button type="button" onClick="javascript:validate_UTEN()">Salva</button>

    e ora tutto funzionaù1

    grazie lo stesso

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    non è il massimo così... se un utente preme invio invece di clickare sul button il form viene inviato senza controlli

  5. #5
    mmm... questa non la sapevo :master:

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.