Foros del Web » Programando para Internet » Javascript »

Sumar o multiplicar cajas de texto

Estas en el tema de Sumar o multiplicar cajas de texto en el foro de Javascript en Foros del Web. Amigos, tengo un probelmas con el javascrip, no se como empezar es lo peor, lo que pasa es que tengo un formulario donde uno ingrese ...
  #1 (permalink)  
Antiguo 30/05/2004, 15:33
 
Fecha de Ingreso: marzo-2004
Mensajes: 77
Antigüedad: 20 años, 2 meses
Puntos: 0
Sumar o multiplicar cajas de texto

Amigos, tengo un probelmas con el javascrip, no se como empezar es lo peor, lo que pasa es que tengo un formulario donde uno ingrese imaginense 5 productos pueden ser 'n', la cual hay hay un textbox de la forma name=can_prod[] y otro donde esta el precio unitario name=prec_unit[] y otra donde esta el valor de venta name=val_vta[], la cosa es la siguiente yo ingreso la cantidad y el precio pero automanticamente me deberia calcular el valor de venta para cada uno de estos 5 en este caso, ademas al final de todo esto hay una caja de texto name=total_venta, como haria un javascrip para que me calcule todo esto....Ayuda..please!!
  #2 (permalink)  
Antiguo 31/05/2004, 04:10
 
Fecha de Ingreso: mayo-2004
Mensajes: 75
Antigüedad: 20 años
Puntos: 2
No se si es exactamente esto lo que decias, pero por si acaso te lo pongo:

<html>
<head>
<script language="JavaScript">
function calcularTotalParcial(index){
var cantidad = document.getElementsByName("cantidad")[index];
var precio = document.getElementsByName("precio")[index];
var total = document.getElementsByName("total")[index];
if((cantidad.value != "") && (precio.value != "")){
total.value = cantidad.value*precio.value;
calcularTotal();
}
else{
if(total.value != ""){
total.value = "";
calcularTotal();
}

}
}

function calcularTotal(){
var totales = document.getElementsByName("total");
var suma = 0;
for(var i=0; i<totales.length; i++){
if(totales[i].value != ""){
suma += totales[i].value*1;
}
}
document.getElementById("total_venta").value = suma;
}
</script>
</head>
<body>
<form>
<table>
<tr>
<td>Cantidad: <input type="text" name="cantidad" value="" onChange="calcularTotalParcial(0)"/></td>
<td>Precio: <input type="text" name="precio" value="" onChange="calcularTotalParcial(0)"/></td>
<td>total: <input type="text" name="total" value="" disabled="true"/></td>
</tr>
<tr>
<td>Cantidad: <input type="text" name="cantidad" value="" onChange="calcularTotalParcial(1)"/></td>
<td>Precio: <input type="text" name="precio" value="" onChange="calcularTotalParcial(1)"/></td>
<td>total: <input type="text" name="total" value="" disabled="true"/></td>
</tr>
<tr>
<td colspan="3">
<input type="text" name="total_venta" value=""/>
</td>
</table>
</form>
</body>
</html>
  #3 (permalink)  
Antiguo 31/05/2004, 23:51
 
Fecha de Ingreso: marzo-2004
Mensajes: 77
Antigüedad: 20 años, 2 meses
Puntos: 0
Sonrisa Funciona bien..

Si funciona tu ejemplo perfectamente, pero ahora viene mi duda cuando pongo varias textbox con el mismo nombre, es igual poner name=nombre_text y asi en todas las demas con respecto a que si las pongo asi: name=nombre_text[], kisiera que me absuelvan esa duda.. please..y gracias a todos por leer mi pregunta y colaborar..
  #4 (permalink)  
Antiguo 01/06/2004, 00:39
 
Fecha de Ingreso: mayo-2004
Mensajes: 75
Antigüedad: 20 años
Puntos: 2
Si pones el mismo nombre (ej. name="nombre_text") luego para acceder a ellas (por ejemplo desde JavaScript), si haces un document.getElementsByName("nombre_text); esto te devuelve un array con todos los elementos de nombre_text que hayas declarado. Para acceder a cada uno de los elementos concretos (por ejemplo a su valor) lo que tienes que hacer es:

var elementos = document.getElementsByName("nombre_text");
alert(elementos[i].value); // esto te devuelve el elemento que esta en la posicion i, que va de 0 a n, siendo n el numero de elementos que tienes con el mismo nombre menos1.

Espero responder con esto a tu pregunta.

Sonia
  #5 (permalink)  
Antiguo 04/05/2009, 11:49
 
Fecha de Ingreso: enero-2009
Mensajes: 3
Antigüedad: 15 años, 3 meses
Puntos: 0
Sonrisa Respuesta: Sumar o multiplicar cajas de texto

men un pregunta la function calcularTotal no me funciona y no encuentro una solucion me podrias ayudar
  #6 (permalink)  
Antiguo 04/05/2009, 11:51
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 3 meses
Puntos: 772
Respuesta: Sumar o multiplicar cajas de texto

El mensaje original es de hace casi 5 años. Por favor, no reviváis temas tan antiguos.

Saludos,
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.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




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