ciao a tutti,
devo abilitare il pulsante di invio form solo se il totale calcolato è maggiore di 5 e multiplo di 6.
Lo script che uso per la somma è il seguente e integra già due funzioni che visualizzano/nascondono un immagine a seconda del risultato (grazie a cavicchiandrea):
codice://SCRIPT DI CALCOLO: function startCalc(){ interval = setInterval(calc(),1); } function calc(){ one = document.autoSumForm.campo1.value; two = document.autoSumForm.campo2.value; three = document.autoSumForm.campo3.value; four = document.autoSumForm.campo4.value; five = document.autoSumForm.campo5.value; var val = document.autoSumForm.totale.value = (one * 1) + (two * 1) + (three * 1) + (four * 1) + (five * 1); //SCRIPT CHE VISUALIZZA UN IMMAGINE SE IL RISULTATO E' MAGGIORE DI 5: var stato = (val>5)? "visible" : "hidden"; document.getElementById('immagine1').style.visibility = stato; //SCRIPT CHE VISUALIZZA UN IMMAGINE SE IL RISULTATO E' MULTIPLO DI 6: var stato = (val% 6 == 0)? "visible" : "hidden"; document.getElementById('immagine2').style.visibility = stato; } //FINE SCRIPT DI CALCOLO function stopCalc(){ clearInterval(interval); }
Il seguente script invece lo uso per abilitare il pulsante di invio form solo se alcuni campi sono compilati (sempre grazie a cavicchiandrea):
come posso integrare lo script in rosso con le regole del form precedente scritte in blu ?codice:<script type="text/javascript"> function abilita(){ var elem = document.getElementsByName("nome"); var elem = document.getElementsByName("cognome"); var elem = document.getElementsByName("mail"); var N_elem = elem.length; for(var i = 0; i<elem.length; i++){ if(elem[i].value.length > 0 )N_elem-- if(N_elem == 0)document.getElementById("pulsante").removeAttribute("disabled") else document.getElementById("pulsante").setAttribute("disabled","disabled") }} </script>
Grazie!!

Rispondi quotando