Hola, como podria hacerse esto correctamente:
debo iterar un select, hasta que suma de cantidades ingresadas sea = a la cantidad original.
pero no me resulta
¿Alguna idea? 
 Código PHP:
    <?
// Cantidad Original
$cantidad=$_REQUEST['cantidad']; 
?>
<script>
function sumar()
{
    var a, total = 0;
    var elements = document.getElementsByName('cantid[]');
        for(a=0; a<elements.length; a++)
    {
          total += (parseFloat(elements[a].value));
       }
        document.getElementById("resultado").value = total;
}
</script>
<form action='vi-di-dividirprod.php' method=post class="modify">
<table id=tabla-style1 border=0 cellpadding=1 cellspacing=1>
 <tr> 
  <th class=cod-tab>Vitrina</th>
  <th class=desc-tab>Cantidad</th>
 </tr>
[B]<!-- Iterar mientras suma de cantidades ingresadas sea menor a cantidad recuperada -->[/B] <tr>
  <td>
   <select name="vitrina[]" >
    <option value='0'>-- Elija Vitrina--</option>
     <?
     $con2=mysql_query("select * from vitrina where cod_local = '$local' order by cod_tipvit") or die(mysql_error());
     $num=mysql_num_rows($con2);
     if($num>0)
     {
       for($i=0;$i<$num;$i++)
       {
          $id=mysql_result($con2,$i,"id_vitrina");
          $tipo=mysql_result($con2,$i,"cod_tipvit");
      $desc=mysql_result($con2,$i,"posici_vit");
      $con3=mysql_query("select * from tipovitrina where id_tipvit = '$tipo' limit 1") or die(mysql_error());
      $reg=mysql_fetch_array($con3);
      $tipov=$reg[tipo_vit];
      echo "<option value=$id>$tipov $desc</option>";
       }  
     }
     else
     { 
          echo "<option value=''>--No existen Vitrinas--</option>";
     }
    ?>
   </select>
  </td>
  <td>
    <!-- Valor ingresado -->
    <input type=text name='cantid' onkeyup='sumar()' size='3' value='0' class='modifyinput'>
   </td> 
 </tr>
[B]<!-- Fin iteracion -->[/B]
</table>
<div align="right">Suma-Total:<input type="text" value="0" name="resul" id="resultado" size="3"/></div>