Foros del Web » Programando para Internet » Javascript »

Multiplicar campos de nombre (array)

Estas en el tema de Multiplicar campos de nombre (array) en el foro de Javascript en Foros del Web. Bueno, tengo este codigo Código HTML: <script language= "javascript" type= "text/javascript" > function encambio(campo){ var valor = document.fac.valor[campo].value; var cantidad = document.fac.cantidad[campo].value; total2 = eval(valor) ...
  #1 (permalink)  
Antiguo 12/09/2005, 18:45
 
Fecha de Ingreso: septiembre-2005
Mensajes: 68
Antigüedad: 18 años, 7 meses
Puntos: 0
Multiplicar campos de nombre (array)

Bueno, tengo este codigo

Código HTML:
<script language="javascript" type="text/javascript"> 
function encambio(campo){ 

var valor = document.fac.valor[campo].value; 
var cantidad = document.fac.cantidad[campo].value; 

total2 = eval(valor) * eval(cantidad); 
document.forms['fac'].total[campo].value = total2; 
} 
</script> 
<form name="fac"> 
<input id="hid" type="hidden" name="contador" value="1"> 
<br> 
NOMBRE VALOR CANTIDAD TOTAL     <br> 
<input type=text name="name[1]" > 
<input type="text" name="valor[1]" onChange="encambio(1);"> 
<input type="text" name="cantidad[1]" onChange="encambio(1);"> 
<input type="text" name="total[1]" onChange="encambio(1);"> 
</form> 
y el problema es que NO me funciona... ojo.. que los nombres de los campos deben ser como ahi aparecen.. saludos y gracias de antemanos!

---
www.comosea.net
  #2 (permalink)  
Antiguo 13/09/2005, 00:51
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola mgomez

Intentalo así:
Código PHP:
function encambio(campo){ 

var 
valor document.fac['valor['+campo+']'].value;
var 
cantidad document.fac['cantidad['+campo+']'].value

total2 = eval(valor) * eval(cantidad); 
document.forms['fac']['total['+campo+']'].value total2

Saludos,
  #3 (permalink)  
Antiguo 13/09/2005, 06:37
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Hola mgomez!
Si vas a usar esos valores en PHP, te recomiendo poner los atributos name asi:
Código HTML:
<input type="text" name="name[]"> 
Y en PHP, los lees asi:
Código PHP:
$name $_POST["name"]; 
En este caso, $name va a ser un arreglo.
Y mi ultimo consejo es, que no utilices esta forma:
document.forms['fac'].total[campo].value, ya que es anticuada.
Es mejor asi:
Código HTML:
document.getElementById("name1").value
para esto, solo necesitas agregar el atributo id="name1".
Esta forma funciona en cualquier browser.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #4 (permalink)  
Antiguo 13/09/2005, 08:41
 
Fecha de Ingreso: septiembre-2005
Mensajes: 68
Antigüedad: 18 años, 7 meses
Puntos: 0
por que dices ANTICUADA?... ademas el post de arriba me sirvio.. gracias...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:11.