JavaScript - Sumar cantidad de Campos

 
Vista:
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 18/01/2018 19:23:25
Buenos dias colegas, alguno que me pueda ayudar, ortientar, instruir, en crear algun metodo para sumar la cantidad de los campos "cantidad" y que me aparezca el total en el campo "total Productos".


ayuda


sumar 1 + 4 + 3 = 8
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 4
Ha aumentado su posición en 24 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Miguel (1 intervención) el 18/01/2018 19:27:40
Si los registros los estás obteniendo de una base de datos (o similar) utiliza el mismo PHP para realizar la operación. En caso de crear las filas en el cliente (navegador), utiliza JavaScript.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 18/01/2018 19:51:12
Gracias Miguel, te explico, no se obtienen esos datos de una base de datos, apenas estan selecionando la cantidad del articulo que desea llevar, y lo que trato de realizar es que el conteo sea en tiempo real .....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por xve (2100 intervenciones) el 18/01/2018 19:57:02
Hola Donovan, la manera es obtener los valores de dichos inputs y sumarlos... no nos muestras tu codigo html, por lo que no se muy bien como acceder a ellos, pero seria algo así:

1
document.getElementById("total").value=parseInt(document.getElementById("cantidadA")+document.getElementById("cantidadB")+document.getElementById("cantidadC"));

Te sirve?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 18/01/2018 20:03:46
Ok Master aqui le muestro el codigo HTML ......

1
2
3
4
5
<td style="padding-left:20px;">
	<div class="form-group">
	<input type="number" name="quantity[]" id="quantity<?php echo $x; ?>" onkeyup="getTotal(<?php echo $x ?>)" autocomplete="off" class="form-control" />
	</div>
</td>

Este campo es el de Cantidad, de la Imagen anterior

1
2
3
4
5
6
7
<div class="form-group">
    <label for="grandTotalProductos" class="col-sm-3 control-label">Total Productos:</label>
    <div class="col-sm-9">
      <input type="text" class="form-control" id="grandTotalProductos" name="grandTotalProductos" />
 
    </div>
</div> <!--/form-group-->

Aqui es donde quiero que muestre el resultado en tiempo real

En el primer campo tengo un metodo llamado getTotal

1
2
3
4
5
6
7
8
9
10
11
12
13
function getTotal(row = null) {
	if(row) {
 
		var total = Number($("#rate"+row).val()) * Number($("#quantity"+row).val());
		total = total.toFixed(2);
		$("#total"+row).val(total);
		$("#totalValue"+row).val(total);
 
 
	} else {
		alert('Error !! Actualizar la Pagina (F5)');
	}
}//End Total
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de italo
Val: 6
Ha disminuido su posición en 10 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por italo (1 intervención) el 18/01/2018 21:11:58
prueba asi:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function getTotal(row = null) {
 
    if(row) {
 
        var total = Number($("#rate"+row).val()) * Number($("#quantity"+row).val());
		total = total.toFixed(2);
		$("#total"+row).val(total);
		$("#totalValue"+row).val(total);
 
        //* inicio
            //* calculo el numero de productos en la orden.
            var total_productos_orden = 0;
 
            //* por cada producto, obtengo su cantidad
            $("#quantity"+row).each(function () {
 
                // calculo todas la cantidad
                total_productos_orden += parseFloat(this.value);
 
            });
 
            //* muestro en "Total Productos" el total de productos en la orden.
            $("#grandTotalProductos").val(total_productos_orden);
 
        //* fin
 
	} else {
		alert('Error !! Actualizar la Pagina (F5)');
	}
}//End Total

a ver q tal va.

salud2,.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 18/01/2018 23:04:23
De hecho lo estaba intentado hacer asi italo, solo que no he logrado conseguir que sume la cantidad de productos, de uno que agrego nuevo, te muestro en la imagem
ayuda2

y se agrego uno nuevo me suma solo la cantidad del nuevo, no la cantidad de los productos anteriores.....

Espero me puedas ayudar master
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 18/01/2018 23:08:35
De hecho lo estaba intentado hacer asi italo, solo que no he logrado conseguir que sume la cantidad de productos, de uno que agrego nuevo, te muestro en la imagen


ayuda2

y se agrego uno nuevo me suma solo la cantidad del nuevo, no la cantidad de los productos anteriores.....

Espero me puedas ayudar master
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 553
Bronce
Ha aumentado 1 puesto en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por kip (107 intervenciones) el 19/01/2018 01:37:05
Elimina el atributo keyup de tus inputs y prueba este codigo:

1
2
3
4
5
6
7
8
$('[name="quantity[]"]').keyup(function(e) {
    var totalElems = $('[name="quantity[]"]').get()
        .reduce(function(a, c) {
            return a + (parseInt(c.value) || 0);
        }, 0);
 
    $('#grandTotalProductos').val(totalElems);
});
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 19/01/2018 17:18:55
Hola Kip, solo para comprender bien tu respuesta .... elimino los evento onkeyup="getTotal(<?php echo $x ?>)" de mi input dejandolo de esta forma ?

1
2
3
4
5
<td style="padding-left:20px;">
	<div class="form-group">
	<input type="number" name="quantity[]" id="quantity<?php echo $x; ?>"  autocomplete="off" class="form-control" />
	</div>
</td>

Original Input

1
2
3
4
5
<td style="padding-left:20px;">
	<div class="form-group">
	<input type="number" name="quantity[]" id="quantity<?php echo $x; ?>" onkeyup="getTotal(<?php echo $x ?>)" autocomplete="off" class="form-control" />
	</div>
</td>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 553
Bronce
Ha aumentado 1 puesto en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por kip (107 intervenciones) el 19/01/2018 17:28:50
Si, recuerda colocar siempre el código JS antes del cierre de la etiqueta </body>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 2 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Sumar cantidad de Campos

Publicado por Donnovan (7 intervenciones) el 19/01/2018 17:35:41
Kip y si manejo todo mi codigo js en otro arhivo, mira te adjunto mis archivos para ver si logro explicarme aun mas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar