Foros del Web » Programando para Internet » Javascript »

Problema con suma

Estas en el tema de Problema con suma en el foro de Javascript en Foros del Web. Amigos, Quisera ver si ustedes me pueden ayudar con el siguiente problema con el que me encuentro... tengo una tabla html, a la cual le ...
  #1 (permalink)  
Antiguo 28/11/2016, 13:38
 
Fecha de Ingreso: abril-2015
Mensajes: 96
Antigüedad: 7 años, 9 meses
Puntos: 1
Problema con suma

Amigos, Quisera ver si ustedes me pueden ayudar con el siguiente problema con el que me encuentro...

tengo una tabla html, a la cual le tengo un boton agregar, el cual agrega celdas a la tabla. mi problema consiste en que yo necesito ir ingresando valores en estas celdas y se me deben ir sumando.. y esto lo que no logro hacer...

Funcion que agregar las celdas a la tabla.
Código Javascript:
Ver original
  1. function myCreateFunction() {
  2.  
  3.         var table = document.getElementById("myTable");
  4.         var row = table.insertRow(1);
  5.         var fila = table.insertRow(1);
  6.         var cell1 = row.insertCell(0);
  7.         var cell2 = row.insertCell(1);
  8.         var cell2 = row.insertCell(1);
  9.         var cell3 = row.insertCell(1);
  10.         var cell4 = row.insertCell(1);
  11.         var cell5 = row.insertCell(1);
  12.         var cell6 = row.insertCell(1);
  13.         var cell7 = row.insertCell(1);
  14.         var cell8 = row.insertCell(1);                  
  15.         var cell9 = row.insertCell(1);    
  16.         var cell10 = row.insertCell(1);    
  17.         var cell11 = row.insertCell(1);  
  18.  
  19.    
  20.         cell1.innerHTML += '<input type="text" id="cCodCuenta" name="cCodCuenta[]" style="width:80px" onkeyup="inicio();" >';
  21.  
  22.         cell2.innerHTML += '<input type="button" id="borrar" onClick="borrar();" class="borrar" style = "background:red;color:white;"    style="width:50px"  value="-">';
  23.  
  24.         $(function () {
  25.         $(document).on('click', '.borrar', function (event) {
  26.         event.preventDefault();
  27.         $(this).closest('tr').remove();
  28.         });
  29.         });
  30.        
  31.  
  32.         cell3.innerHTML += '<select id="sucursal" id="txtSucursal" name="txtSucursal[]">'
  33.         + '<option value="0">Seleccione</option>'
  34.         + '<option value="10">ANTOFAGASTA</option>'
  35.         + '<option value="31">ASIGNABLES</option>'
  36.         + '<option value="4">BUIN</option>'
  37.         + '<option value="1">CASA MATRIZ</option>'
  38.         + '<option value="21">CHILLAN</option>'
  39.         + '<option value="20">CONCEPCION</option>'
  40.         + '<option value="22">COPIAPO</option>'
  41.         + '<option value="3">CURACAVI</option>'
  42.         + '<option value="24">CURICO</option>'
  43.         + '<option value="11">IQUIQUE</option>'
  44.         + '<option value="9">LA SERENA</option>'
  45.         + '<option value="33">MELIPILLA</option>'
  46.         + '<option value="8">OSORNO</option>'
  47.         + '<option value="18">OVALLE</option>'
  48.         + '<option value="26">PUERTO MONTT</option>'
  49.         + '<option value="17">QUILLOTA</option>'
  50.         + '<option value="14">RANCAGUA</option>'
  51.         + '<option value="13">SAN FERNANDO</option>'
  52.         + '<option value="7">SAN VICENTE TT</option>'
  53.         + '<option value="30">SANTA CRUZ</option>'
  54.         + '<option value="25">SANTIAGO CENTRO</option>'
  55.         + '<option value="12">TALAGANTE</option>'
  56.         + '<option value="27">TALCA</option>'
  57.         + '<option value="23">TEMUCO</option>'
  58.         + '<option value="6">VALPARAISO</option>'
  59.         ;
  60.  
  61.         cell4.innerHTML += '<select id="departamento" id="txtDepartamento" name="txtDepartamento[]">'
  62.         + '<option value="0">Seleccione</option>'
  63.         + '<option value="1">Informatica</option>'
  64.         + '<option value="2">Operaciones</option>'
  65.         + '<option value="3">Riesgo</option>'
  66.         + '<option value="4">Archivo</option>'
  67.         + '<option value="5">Recursos Humanos</option>'
  68.         + '<option value="6">Contabilidad</option>';
  69.  
  70.         cell5.innerHTML += '<select id="txtGerencia" name="txtGerencia[]">'
  71.         + '<option value="0">Seleccione</option>'
  72.         + '<option value="1">General</option>'
  73.         + '<option value="2">Informatica</option>'
  74.         + '<option value="3">Riesgo</option>';
  75.  
  76.         cell6.innerHTML += '<input type="text" name="txtnDocumento[]"  style="width:90px" >';
  77.  
  78.         cell7.innerHTML += '<select id="tDocumento" name="tDocumento[]" >'
  79.         + '<option value="0">Seleccione</option>'
  80.         + '<option value="Cheque">Cheque</option>'
  81.         + '<option value="Letra">Letra</option>'
  82.         + '<option value="Pagaré">Pagaré</option>'
  83.         + '<option value="Vale Vista">Vale Vista</option>'
  84.         + '<option value="Depósito">Depósito</option>'
  85.         + '<option value="Sin Documento">Sin Documento</option>';
  86.  
  87.         cell8.innerHTML += '<input type="text" id="txtgParticular" name="txtgParticular[]"  style="width:85px">';
  88.  
  89.         cell9.innerHTML += '<input type="text" id="txtvHaber" onkeyup="total2();" name="txtvHaber[]" style="width:90px" >';
  90.  
  91.         cell10.innerHTML += '<input type="text" id="txtvDebe" onkeyup="total();" name="txtvDebe[]" style="width:90px" >';
  92.  
  93.         cell11.innerHTML += '<input type="text" id="txtnCuenta" name="txtnCuenta[]"  readonly>';
  94.        
  95.         }

Funcion donde intento realizar la suma..

Código Javascript:
Ver original
  1. function total(){    
  2.         var vDebe = document.getElementById('txtvDebe').value;
  3.         arr = [];    
  4.         vDebe2 = arr.push(vDebe);
  5.         console.log(vDebe2.length);
  6.  
  7.         for(i=0;i<arr.length;i++){
  8.         sum2 = sum2 + parseInt(arr[i]);
  9.         document.getElementById('vDebe2').value=sum2;  
  10.  
  11.         }

que es lo que hago aqui.. rescato los valores por id de la celda "txtvDebe".. y los almaceno ( algo así como una pila)..
y luego recorro y sumo.. cual es el problema.. es que no suma correctamente..
no se limpia el arreglo.. no vuelve a cero... y eso es lo que necesito..

ya que por ejemplo si en una celda digito un 1 pero me equivoco y lo quiero cambiar por un 2, en vez de mantener el 2 me suma y me muestra 3...

espero me puedan ayudar.. saludos
  #2 (permalink)  
Antiguo 28/11/2016, 13:56
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con suma

¿Qué ingresas (datos) y que sumas?

¿Puedes mostrar tu formulario?
  #3 (permalink)  
Antiguo 28/11/2016, 14:16
 
Fecha de Ingreso: abril-2015
Mensajes: 96
Antigüedad: 7 años, 9 meses
Puntos: 1
Respuesta: Problema con suma

Mi formulario.. lo realizo en el javascript.. con las celdas.. si te fijas en las celdas 9 y 10.. estan los inputs vHaber y vDebe.. ( los cuales son valores ).
  #4 (permalink)  
Antiguo 28/11/2016, 16:14
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con suma

Cita:
rescato los valores por id de la celda "txtvDebe"
Ahí te equivocas, estás rescatando EL valor no valores del input (no celda) con id "txtvDebe"

Etiquetas: funcion, html, input, suma, text, valor
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 21:19.