Hola a todos.

Con la ricerca ho trovato questa funzione di somma (credits fcaldera), ma non riesco a farle funzionare correttamente:

codice:
function calcola(frmObj, id)
{

  for (i=0; i<inp.length; i++) {
     if (inp[i].name.match(/^CompetenzeExtra/i) {
         tot += parseFloat(inp[i].value);
     }
  }
  alert(tot);

}
Il mio problema che ho un form generato dinamicamente nel quale non conosco a priori quanti campi chiamati CompetenzeExtra potrò avere.

Ad ogni campo CompetenzeExtra ho associato l'id estratto dal database ed il form è questo:

codice:
<input type="text" name="CompetenzeExtra-7" size="10" value="243.21" readonly style="background-color: #C0C0C0" onkeyup="calcola(this.form, 7)">

<input type="text" name="TotaleCompetenzeExtra-7" size="10" value="771.76" readonly style="background-color: #C0C0C0">

<input type="text" name="CompetenzeExtra-8" size="10" value="23.21" readonly style="background-color: #C0C0C0" onkeyup="calcola(this.form, 7)">

<input type="text" name="TotaleCompetenzeExtra-8" size="10" value="0.00" readonly style="background-color: #C0C0C0">
Vorrei che la funzione calcola aggiornasse il valore di TotaleCompetenzeExtra-7 facendo la somma di CompetenzeExtra-7 e di CompetenzeExtra-8, cioè:

TotaleCompetenzeExtra-7 = 266.42

E' possibile?
Grazie