Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Problema onsubmit

  1. #1

    Problema onsubmit

    Ciao a tutti,
    ho già letto qualche 3d sull'argomento, ma non riesco proprio a risolvere il problema della doppia chiamata di funzione nel submit...
    le funzioni sono queste:

    [CODE]<script language="javascript">
    function validateForm(frm)
    {

    if(!isName(frm.nome.value,'NOME')) return false;
    if(!isName(frm.cognome.value,'COGNOME')) return false;
    if(!isName(frm.citta.value,'CITTA')) return false;
    if(!isAddress(frm.indirizzo.value)) return false;
    if(!isName(frm.citta.value,'CITTA')) return false;
    if(!isCF(frm.cf.value)) return false;
    if(frm.piva.value.length>0) {if(!isPIVA(frm.piva.value)) return false }
    if(!isTelFax(frm.telefono.value,'TELEFONO')) return false;
    if(frm.fax.value.length>0) {if(!isTelFax(frm.fax.value,'FAX')) return false }
    if(!isEmail(frm.email.value)) return false;

    return confirm("Confermi la registrazione dei dati?");

    }
    </script>

    <script language=javascript>

    function checkForm()
    {
    //Questa funzione verifica se le quantità inserite dall'utente siano corrette
    formRef=document.forms[0];
    qtaCount=(formRef.qta.length>0 ? formRef.qta.length : 1);
    if(qtaCount==1)
    {
    valore=formRef.qta.value;
    if(isNaN(valore) || (valore==0))
    {
    alert("La quantità della riga 1 non è valida!"); return false;
    }
    }
    for(k=0;k<qtaCount;k++)
    {
    valore=formRef.qta[k].value;
    if(isNaN(valore) || (valore==0)) {alert("La quantità della riga " + (k+1) + " non è valida!"); return false}
    }
    return true;
    }
    </script>CODE]

    poi le richiamo così nel onsubmit così
    [CODE]onsubmit="return validateForm(this); && return checkForm();"CODE]

    mentre la funzione checkForm funziona correttamente la funzione validateForm non vuol sapere di funzionare... dove sbaglio?!?

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    se vi sono errori altrove non lo so, ma questo
    onsubmit="return validateForm(this); && return checkForm();"
    scrivilo cosi'
    onsubmit="return (validateForm(this) && checkForm())";

    ciao

  3. #3
    No in questo modo mi si "intrecciano" le funzioni ossia il pulsante Aggiorna che serve per controllare se il campo quantità è numerico o meno ora richiama il controllo sul campo NOME (se vuoto o meno) e se premo il pulsante conferma ordine non mi nessun controllo.

    L a soluzione quale potrebbe essere? Avevo pensato di richiamare la funzione checkForm() con un evento sul pulsante Aggiorna... oppure viceversa la funzione validateForm(this) dal pulsante Conferma... potrebbe funzionare?


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.