Foros del Web » Programando para Internet » Javascript »

Suma javascript

Estas en el tema de Suma javascript en el foro de Javascript en Foros del Web. Qujé tal, hace poco tuve un problema con una suma condicionada en javascript, misma que quedó solucionada de la siguiente manera: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript ...
  #1 (permalink)  
Antiguo 09/01/2015, 11:48
 
Fecha de Ingreso: octubre-2014
Mensajes: 63
Antigüedad: 9 años, 6 meses
Puntos: 0
Suma javascript

Qujé tal, hace poco tuve un problema con una suma condicionada en javascript, misma que quedó solucionada de la siguiente manera:

Código Javascript:
Ver original
  1. var banks = {"~":0, "Afirme": 0, "Bajio": 0, "Banamex": 0, "Banco Azteca": 0, "Banco Walmart": 0,
  2. "Banorte": 0, "Banregio": 0, "BBVA Bancomer": 0, "Coppel": 0, "HSBC": 0, "Inbursa": 0, "IXE": 0, "Mifel": 0, "Santander": 0, "Scotiabank": 0};
  3. var form = document.forms.form1;
  4. var selects = form["banco_fond[]"];
  5. var deposit_fields = form["fond[]"];
  6. var bnc_auto = form["banco_auto[]"];
  7. var resta = form["auto[]"];
  8. //muestra resultado
  9. var result = function() {
  10. var html_result = [];
  11. for (var j in banks)
  12. html_result.push(j == '~' ? '' : banks[j] + ' - ' + j);
  13. document.getElementById("result").innerHTML = "<div class='banks_style'>Totales por banco:<br /> " + html_result.join("<br />")+"<div>";
  14. }
  15. var update = function(){
  16. for (var j in banks){
  17. var x = 0, field;
  18. var y = 0, camp;
  19. banks[j] = 0;
  20. while (field = deposit_fields[x])
  21. if (selects[x++].value == j)
  22. banks[j] += +field.value;
  23. while (camp = resta[y])
  24. if (bnc_auto[y++].value == j)
  25. banks[j] += -camp.value;
  26. banks[j] = parseFloat(banks[j]).toFixed(3);
  27. }
  28. result()
  29. };
  30. for (var i = 0; i < deposit_fields.length; i++) {
  31. var optionsHTML = '';
  32. for (var j in banks)
  33. optionsHTML += '<option value="' + j + '">' + j + '</option>';
  34. selects[i].innerHTML = optionsHTML
  35.  
  36. }
  37. for (var i = 0; i < resta.length; i++) {
  38. var sel = '';
  39. for (var j in banks)
  40. sel += '<option value="' + j + '">' + j + '</option>';
  41. bnc_auto[i].innerHTML = sel
  42.  
  43. selects[i].onkeyup = update
  44. selects[i].onkeypress = update
  45. bnc_auto[i].onkeyup = update
  46. bnc_auto[i].onkeypress = update
  47. }
  48. update()
Suma los valores del mismo banco de una sección y los resta de otra para así ajustar todo a ceros.
Este script funciona con un array que contiene los valores de los bancos, mismos que adquiere para realizar la suma y la resta, sin embargo, esto me ha provocado ahora una pequeña dificultad, ya que cuando hago una consulta en PHP para que me devuelva los datos insertados al formulario, pues no ejecuta ya que rellena los campos con valores de la base de datos. cómo puedo hacer para que siga ejecutando con normalidad o al código adjunto hacerlo trabajar sin que necesite de los valores del array a mis campos.
Código Javascript:
Ver original
  1. optionsHTML += '<option value="' + j + '">' + j + '</option>';

Etiquetas: formulario, funcion, html, php, suma, 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 03:16.