Ver Mensaje Individual
  #10 (permalink)  
Antiguo 10/06/2011, 09:48
tumbero_x
 
Fecha de Ingreso: octubre-2010
Ubicación: Buenos Aires
Mensajes: 557
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Aplicar each a una funcion

buenisimo
con esta funcion, se va generando el iva y su respectivo valor a medida que el usuario va agregando filas a una tabla html

Código Javascript:
Ver original
  1. jQuery.fn.exists = function(){return jQuery(this).length>0;}
  2.  
  3.     function actualizarIVA(iva,valor){
  4.        
  5.         id=iva.toString();
  6.         id=id.replace(".","");
  7.         if($('#iva'+id).exists())
  8.         {  
  9.        
  10.  
  11.         var vactual=$('#iva'+id+' span.total').text();
  12.         var vactual=vactual.replace(/,/g,'');
  13.         var vactual=parseFloat(vactual);
  14.         $('#iva'+id+' span.total').text((vactual+valor).formatMoney(2, '.', ','));
  15.        
  16.         }
  17.         else
  18.         {
  19.            
  20.             $('#iva').append('<span id="iva'+id+'" style="font-size:9px;height:10px;color:#F00">'+iva+'%&nbsp;<span class="total" style="font-size:11px;height:10px;color:#000" >'+(valor).formatMoney(2, '.', ',')+'</span></span>');
  21.         }
  22.     }
hasta ahi va todo perfecto
pero ahora le doy la posibilidad al usuario de modifcar todas las filas de la tabla html una vez ingresado en la bd
entonces en otra pagina el usuario busca lo que ingreso y con php muestro todo lo que ingreso anteriormente , lo unico que me falta es mostrar el iva y su valor a medida que las filas se van generando con php
o sea , si puedo lograr que esta misma funcion se inicie cada vez que una fila se genere, me andaria bien
pero no puedo lograr eso
estube probando tambien asi
Código PHP:
Ver original
  1. echo '<tr>';
  2. echo '<input type="hidden" name="compra_arti_id[]" value="'.$compra_arti_id[$i].'">';
  3. echo '<input type="hidden" name="compra_descripcion[]" value="'.$fila['descripcion'].'">';
  4. echo '<input type="hidden" name="compra_cod_art[]" value="'.$fila['articulo_id'].'">';
  5. echo '<td style="width:7%; ">' .$fila['articulo_id'].'</td>';
  6. echo '<td style="width:10%;">' .$fila['ean'].'</td>';
  7. echo '<td style="width:30%;">'.$fila['descripcion'].'</td>';
  8. echo '<td style="width:8%;" >'.$compra_proce[$i].'<input type="hidden" name="compra_proce[]" value="'.$compra_proce[$i].'" ></td>';
  9. echo '<td style="width:5%; ">'.$compra_gar_art[$i].'<input type="hidden" name="compra_gar_art[]" value="'.$compra_gar_art[$i].'"></td>';
  10. echo '<td style="width:4%; ">'.$stk_suc[$i].'<input type="hidden" name="stk_suc[]" value="'.$stk_suc[$i].'"></td>';
  11. echo '<td style="width:4%; ">'.$compra_cantidad[$i].'<input type="hidden" name="compra_cantidad[]" value="'.$compra_cantidad[$i].'"></td>';
  12. echo '<td style="width:8%; ">'.number_format($compra_precio[$i], 2).'<input type="hidden" name="compra_precio[]" value="'.$compra_precio[$i].'"></td>';
  13. echo '<td style="width:5%; ">'.$fila['iva_detalle'].'<input type="hidden" name="compra_iva_det[]" id="ivaso"  value="'.$fila['iva_detalle'].'"></td>';
  14. echo '<td style="width:8%; ">'.number_format($compra_iva[$i], 2).'<input type="hidden" id="iv" name="compra_iva[]"  value="'.$compra_iva[$i].'"></td>';
  15. echo '<td style="width:8%; ">'.number_format($tl, 2).'<input type="hidden" name="compra_subtotal[]" value="'.$tl.'"></td>';
  16. echo '<td style="width:3%;text-align:center "><a class="elimina" style="cursor:pointer"><img src="imagenes/delete.png" /></a></td>';
  17. echo '<td class="txt" style="display:none">'.$tl.'</td>';
  18. echo '<td class="iva" style="display:none">'.$compra_iva[$i].'</td>';
  19. echo '</tr>';
  20. echo '<script language="javascript" type="text/javascript">
  21.  
  22. $(document).ready(function(){  
  23.      
  24.         actualizarIVA(document.getElementById("ivaso").value,+document.getElementById("iv").value)
  25.      });
  26. </script>';
pero tambien me toma el primer id ,probe tambien en ponerle una clase a iv y a ivaso y me hace lo mismo
Te agradezco un monton por tu paciencia