Foros del Web » Programando para Internet » Javascript »

Problema actualizacion importe javascript

Estas en el tema de Problema actualizacion importe javascript en el foro de Javascript en Foros del Web. Hola tengo un problema con la actualizacion de importes cuando borro una fila les pego parte del codigo porque es tremendamente largo function agregarFila(obj){ obj.value ...
  #1 (permalink)  
Antiguo 09/04/2012, 09:04
 
Fecha de Ingreso: marzo-2012
Ubicación: Rosario
Mensajes: 108
Antigüedad: 12 años, 8 meses
Puntos: 0
Pregunta Problema actualizacion importe javascript

Hola tengo un problema con la actualizacion de importes cuando borro una fila les pego parte del codigo porque es tremendamente largo

function agregarFila(obj){
obj.value = parseInt(obj.value) + 1;
var oId = obj.value;
var codigo = document.getElementById("codigo");
var descripcion = document.getElementById("descripcion");
var cantidad = document.getElementById("cantidad");
var precioventa = document.getElementById("precioventa");
var descextra = document.getElementById("descextra");
var importe = document.getElementById("importe");

document.getElementById("baseimponible").value=par seFloat(Math.round(document.getElementById("baseim ponible").value*100)/100) + parseFloat(document.getElementById("importe").valu e); ( ESTA ES LA PARTE QUE USO PARA AGREGAR )

var strHtml1 = codigo.value + '<input type="hidden" id="hdncodigo_' + oId + '" name="hdncodigo_' + oId + '" value="' + codigo.value + '"/>' ;
var strHtml2 = descripcion.value + '<input type="hidden" id="hdndescripcion_' + oId + '" name="hdndescripcion_' + oId + '" value="' + descripcion.value + '"/>' ;
var strHtml3 = cantidad.value + '<input type="hidden" id="hdncantidad_' + oId + '" name="hdncantidad_' + oId + '" value="' + cantidad.value + '"/>' ;
var strHtml4 = precioventa.value + '<input type="hidden" id="hdnprecioventa_' + oId + '" name="hdnprecioventa_' + oId + '" value="' + precioventa.value + '"/>' ;
var strHtml5 = descextra.value + '<input type="hidden" id="hdndescextra_' + oId + '" name="hdndescextra_' + oId + '" value="' + descextra.value + '"/>' ;
var strHtml6 = importe.value + '<input type="hidden" id="hdnimporte_' + oId + '" name="hdnimporte_' + oId + '" value="' + importe.value + '"/>' ;
var strHtml7 = '<img src="images/delete.png" width="16" height="16" alt="Eliminar" onclick="if(confirm(\'Realmente desea eliminar este articulo?\')){eliminarFila(' + oId + ');}"/>';
strHtml7 += '<input type="hidden" id="hdnIdCampos_' + oId +'" name="hdnIdCampos[]" value="' + oId + '" />';
var objTr = document.createElement("tr");
objTr.id = "rowDetalle_" + oId;
var objTd1 = document.createElement("td");
objTd1.id = "tdDetalle_1_" + oId;
objTd1.innerHTML = strHtml1;
var objTd2 = document.createElement("td");
objTd2.id = "tdDetalle_2_" + oId;
objTd2.innerHTML = strHtml2;
var objTd3 = document.createElement("td");
objTd3.id = "tdDetall_3_" + oId;
objTd3.innerHTML = strHtml3;
var objTd4 = document.createElement("td");
objTd4.id = "tdDetalle_4_" + oId;
objTd4.innerHTML = strHtml4;
var objTd5 = document.createElement("td");
objTd5.id = "tdDetalle_5_" + oId;
objTd5.innerHTML = strHtml5;
var objTd6 = document.createElement("td");
objTd6.id = "tdDetalle_6_" + oId;
objTd6.innerHTML = strHtml6;
var objTd7 = document.createElement("td");
objTd7.id = "tdDetalle_7_" + oId;
objTd7.innerHTML = strHtml7;

objTr.appendChild(objTd1);
objTr.appendChild(objTd2);
objTr.appendChild(objTd3);
objTr.appendChild(objTd4);
objTr.appendChild(objTd5);
objTr.appendChild(objTd6);
objTr.appendChild(objTd7);

var objTbody = document.getElementById("tbDetalle");
objTbody.appendChild(objTr);
return false; //evita que haya un submit por equivocacion.
}
function eliminarFila(oId){
var objHijo = document.getElementById('rowDetalle_' + oId);
var objPadre = objHijo.parentNode;
objPadre.removeChild(objHijo);

document.getElementById("baseimponible").value=par seFloat(Math.round(document.getElementById("baseim ponible").value*100)/100) - parseFloat(document.getElementById("importe").valu e); (ESTA ES LA PARTE QUE CUANDO ELIMINO ME CAMBIA EL IMPORTE, EL PROBLEMA ES QUE SIEMPRE ME CAMBIA SEGUN EL ULTIMO IMPORTE INGRESADO)
}
  #2 (permalink)  
Antiguo 10/04/2012, 11:33
 
Fecha de Ingreso: marzo-2012
Ubicación: Rosario
Mensajes: 108
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Problema actualizacion importe javascript

Nadie? alguna idea???
  #3 (permalink)  
Antiguo 11/04/2012, 09:00
 
Fecha de Ingreso: marzo-2012
Ubicación: Rosario
Mensajes: 108
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Problema actualizacion importe javascript

Vamos muchachos, no se cae una idea???
  #4 (permalink)  
Antiguo 12/04/2012, 18:30
 
Fecha de Ingreso: marzo-2012
Ubicación: Rosario
Mensajes: 108
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Problema actualizacion importe javascript

Muchachos vamos una ayuda por favor
  #5 (permalink)  
Antiguo 13/04/2012, 02:37
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 11 meses
Puntos: 206
Respuesta: Problema actualizacion importe javascript

Si quieres que alguien te eche una mano, guarda tu código y HTML aquí:

http://jsfiddle.net/

Donde se vea claramente el error. Y explica mejor el error.
  #6 (permalink)  
Antiguo 14/04/2012, 15:48
 
Fecha de Ingreso: marzo-2012
Ubicación: Rosario
Mensajes: 108
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Problema actualizacion importe javascript

gracias por responder, el error es simplemente la resta del importe, si borro una fila cualquiera sea de la que haya agregado si importar la posicion de la misma me resta el ultimo importe ingresado anteriormente. por ejemplo
codigo1 descripcion 1 cantidad 1 precio 1 desc 1 importe 1= $ 10
codigo2 descripcion 2 cantidad 2 precio 2 desc 2 importe 2 = $10
codigo1 descripcion 3 cantidad 3 precio 3 desc 3 importe 3 = $20
BASEIMPONIBLE = $40
si borro la fila3 la baseimponible quedaria en $20, pero si borro el importe 2 ($10) el importe me quedaria en 20 tambien

creo que el problema esta en la parte del codigo que pegue, si hace falta agregar otra parte sin problemas lo puedo pegar, simplemente no lo hice para no llenar tanto de codigo y poder identificar mas facilmente el error
Saludos

Etiquetas: restas, sumas
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 17:01.