Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/06/2012, 12:01
Avatar de lord_clown
lord_clown
 
Fecha de Ingreso: marzo-2011
Mensajes: 43
Antigüedad: 13 años, 1 mes
Puntos: 0
Problemas con campos array y calculos dinamicos con javascript

Hola!

Tengo un problema con un formulario y espero me puedan ayudar, les explico:

Estoy haciendo un proceso para cotizar y conforme se van agregando los productos se arma una tabla en la cual solicito el costo que se le dará al producto y un porcentaje de descuento en caso de que aplique.

El detalle es que la tabla con el formulario ocupo campos array, les dejo el codigo:

Código:
<form action="proyect_cotiz_cond_comer.php" method="post" id="formulario">
         <table id="vis_table" align="center">
         	<tr>
            	<th colspan="9">PRODUCTOS</th>
            </tr>
            <tr>
            	<th>Producto</th>
                <th>Cantidad</th>
                <th>Precio de Lista</th>
                <th>Precio Final</th>
                <th>Descuento</th>
            </tr>
             <?php
	$sql=mysql_query("CONSULTA") or die(mysql_error());
	$registros=mysql_num_rows($sql);
	while($row=mysql_fetch_array($sql)){
	?>
            <tr>
            	<td><?php echo $row['producto'];?><input type="hidden" name="registro[]" value="<?php echo $row['registro']; ?>" /></td>
                 <td><input type="text" name="cantidad[]" class="required number" size="10" /></td>
                 <td><input type="text" id="multiplicando[]" value="<?php echo $row['precio_lista'];?>" onChange="multiplicar();" disabled="disabled"></td></td>
                 <td><input type="text" name="precio_fin[]" class="required number" size="10" /></td>
                  <td><input type="text" name="descuento[]" class="required number" size="10" /></td>
              </tr>
             <?php
	}
                ?>
Necesito hacer que dinamicamente cada campo de precio final se actualice dependiendo el descuento asignado, el detalle es que si lo hago con un solo campo funciona perfectamente, pero cuando le asigno los corchetes a los imput para validarlos el javascript deja de funcionar; el javascript que estoy ocupando es el siguiente:

Código:
function multiplicar() {
	var m1 = new Array(2)
	var m2 = new Array(2)
	var r = new Array(2)
m1[0] = document.getElementById("multiplicando").value;
m2[0] = document.getElementById("multiplicador").value;

r= (m2 * m1 )/100;
r=m1 -r;
document.getElementById("resultado").value = r;
Esto lo hago asi para que al enviar mi formulario reciba cada variable y guarde esos datos capturados en la base de datos.

Como puedo hacer para que un javascript me calcule los montos al momento y los refleje en otro text trabajando con campos array?