Eccoci qua.

codice:
XHTML

<form action="tuoscript.xxx">
   <fieldset id="elenco_taglie"><legend>Tutte le taglie</legend>
      <fieldset><legend>Taglia 1</legend>
         <ul>[*]
               <label for="taglia_1_1">Taglia 1</label>
               <input id="taglia_1_1" name="taglia_1_1" />
            [*]
               <label for="taglia_1_2">Taglia 2</label>
               <input id="taglia_1_2" name="taglia_1_2" />
            
            [/list]
         


            <label for="risultato_1">Il risultato è</label>
            <input id="risultato_1" name="risultato_1" readonly="readonly" />
         </p>
      </fieldset>
      <fieldset><legend>Taglia 2</legend>
         <ul>[*]
               <label for="taglia_2_1">Taglia 1</label>
               <input id="taglia_2_1" name="taglia_2_1" />
            [*]
               <label for="taglia_2_2">Taglia 2</label>
               <input id="taglia_2_2" name="taglia_2_2" />
            
            [/list]
         


            <label for="risultato_2">Il risultato è</label>
            <input id="risultato_2" name="risultato_2" readonly="readonly" />
         </p>
      </fieldset>
      
   </fieldset>
   <fieldset>
      <legend>Risultato totale</legend>
         <label for="risultato_totale">Il risultato totale è</label>
         <input id="risultato_totale" name="risultato_totale" readonly="readonly" />
   </fieldset>
</form>


Javascript

window.onload = function()
{
   // Prepariamo tutti gli 'attori' dello script
   var elenco_taglie = document.getElementById('elenco_taglie')
   var taglie = elenco_taglie.getElementsByTagName('fieldset')
   var risultati_parziali = new Array()
      for (var i = 0; i < taglie.length; i++)
      {
         var parziale = taglie.item(i).getElementsByTagName('p').item(0).getElementsByTagName('input').item(0)
         risultati_parziali.push(parziale)
      }
   var risultato_totale = document.getElementById('risultato_totale')

   // Calcoliamo e scriviamo i risultati parziali
   function scrivi_risultato_parziale(collezione)
   {
      var taglie_inputs = collezione.getElementsByTagName('ul').item(0).getElementsByTagName('input')
      var taglie_risultato = collezione.getElementsByTagName('p').item(0).getElementsByTagName('input').item(0)

      var totale = 0
      for (var i = 0; i < taglie_inputs.length; i++)
      {
         var valore = parseInt(taglie_inputs.item(i).value)
         if ( !isNaN(valore) )
         {
            totale += parseInt(taglie_inputs.item(i).value)
         }
      }
      taglie_risultato.value = totale
   }

   // Calcoliamo e scriviamo il risultato totale
   function scrivi_risultato_totale()
   {
      var totale = 0
      for (var i = 0; i < risultati_parziali.length; i++)
      {
         var valore = parseInt(risultati_parziali[&#105;].value)
         if ( !isNaN(valore) )
         {
            totale += valore
         }
      }
      risultato_totale.value = totale
   }

   // Attribuiamo le funzioni di somma parziali e totale a tutti gli input
   for (var j = 0; j < taglie.length; j++)
   {
      taglie.item(j).onkeyup = function()
      {
         scrivi_risultato_parziale(this)
         scrivi_risultato_totale()
      }
   }
}
Forse ho scritto con troppa foga e magari ho sorvolato sull'eleganza formale di alcune parti di codice. Questo, tuttavia, è un problema risolvibile in un secondo momento. Prova intanto a vedere se risponde alle tue necessità (aggiungendo anche qualche nuova famiglia di taglie nel mark-up) e soprattutto se funziona (con il Blocco Note qui non ho una percezione molto ordinata del codice).