Ciao a tutti,
mi sto spaccando la testa per validare dei radio buttons in un form.
Questo form non è altro che un questionario medico formato da un numero N di domande ciascuna delle quali ha 4 possibili risposte che hanno valore 0,1,2,3. Lo script fa una somma dei value ogni volta che un radio button viene selezionato e al click di un button viene mostrato il risultato prima nascosto in un div (somma).
Lo script è questo:
window.onload = function()
{
var opzioni = document.getElementById('opzioni')
var opzioni_inputs = opzioni.getElementsByTagName('input')
var opzioni_inputs_radios = new Array()
for (var i = 0; i < opzioni_inputs.length; i++)
{
if ( opzioni_inputs.item(i).getAttribute('type') == 'radio' )
{
opzioni_inputs_radios.push(opzioni_inputs.item(i))
}
}
var invio = document.getElementById('invio')
var somma = document.getElementById('somma')
function elenco_selezioni()
{
var selezionati = new Array()
for (var i = 0; i < opzioni_inputs_radios.length; i++)
{
if ( opzioni_inputs_radios*.checked )
{
selezionati.push(opzioni_inputs_radios*)
}
}
return selezionati
}
function sommatoria(campi)
{
var totale = 0
for (var i = 0; i < campi.length; i++)
{
totale += parseInt(campi*.value)
}
return totale
}
function scrivi_totale(valore)
{
somma.innerHTML = ''
somma.innerHTML = 'Il tuo risultato è '
somma.innerHTML += valore
}
for (var i = 0; i < opzioni_inputs_radios.length; i++)
{
opzioni_inputs_radios*.onchange = function()
{
var campi_selezionati = elenco_selezioni()
var totale_somma = sommatoria(campi_selezionati)
scrivi_totale(totale_somma)
}
}
scrivi_somma(0)
}
```Mi è stato chiesto di rendere obbligatorie le 5 risposte e sto provando invano da ore... qualcuno mi può dare un suggerimento?
Grazie
Chiara