Originariamente inviato da marckhh
Allora,
ho provato lo script ed è tutto piuttosto chiaro, almeno nel funzionamento. Correi però alcune delucidazioni. Qual'è il significato dello zero in questa funzione?

var a = document.forms[0].numero.options[document.forms[0].numero.selectedIndex].text;

Intendo lo zero tra parentesi quadre. Poi suppongo che il selected index sia rivolto al campo select del form giusto?

altra cosa, sarebbe possibile, nel totale, invece che creare un pulsante che lo calcola, fare in modo che esca automaticamente senza essere costretti a clikkare su un bottone?

Grazie mille
Lo zero sta a indicare il primo form del documento.
in pratica se tu assegni ad una variabile document.forms:
var a=document.forms;
la variabile "a" conterrà un array con tutti i form del documento, quindi:
a[0] conterrà il primo form (dall'alto verso il basso)
a[1] il secondo, e così via.
var a = document.forms[0] è una forma contratta per indicare il primo form.

Riguardo il selected index, la tua supposizione è giusta.
La riga di codice indicata:
document.forms[0].numero.options[document.forms[0].numero.selectedIndex].text;
ti restituisce il "testo" all'interno del tag option della select "numero" del primo form.

sarebbe forse più corretto scrivere la select in questa maniera:
<option value="1">1</option>
<option value="2">2</option>
invece di
<option>1</option>
<option>2</option>
In primo luogo perchè, se invii il form ad una pagina, ad esempio php, il valore della select "numero" sarà sempre nullo, indipendentemente dal numero selezionato, perchè per le option non è indicato nessun value.
in secondo luogo perchè è anche più semplice ricavare il valore selezionato:
document.forms[0].numero.options[document.forms[0].numero.selectedIndex].text;
diventerebbe
document.forms[0].numero.value;

Hope it helps