Tengo un problema con la forma en como el javascript me muestra los numeros decimales, porque a veces me lo muestra en el siguiente formato xx.xx pero otras veces lo muestra en el siguiente formato xx.xx. (es decir le coloca un punto al final
Así es como lo llamo:
Código PHP:
Ver original
<input id="cantidad_verif_<?php echo $actaSaldo->getItem();?>" name="cantidad_verif[]" type="text" value="<?php echo $actaSaldo->getCantidadVerif();?>" class="number" onkeypress="changeItem(this, event)" onfocus="tab_<?php echo $actaSaldo->getItem();?> = (typeof(tab_<?php echo $actaSaldo->getItem();?>) == 'undefined')? tab_<?php echo $actaSaldo->getItem();?> = new Temporales(<?php echo $actaSaldo->getItem();?>) : tab_<?php echo $actaSaldo->getItem();?>;" onblur="tab_<?php echo $actaSaldo->getItem();?>.verificar(<?php echo $actaSaldo->getItem();?>)" size="8" style="color:#000" >
Y esta es la función que manipula la data que recibe:
Código Javascript:
Ver original
Temporales = function(item){ this.cantidad = parseFloat($('cantidad_verif_'+item).value); this.cantidad_dec = parseFloat($('cantidad_'+item).value); this.precio = parseFloat($('precio_verif_'+item).value); this.precio_dec = parseFloat($('precio_'+item).value); this.totales = new CalcularTotales(); this.setCantidad = function(cantidad){ this.cantidad = cantidad; } this.getCantidad = function(){ return this.cantidad; } this.setPrecio = function(precio){ this.precio = precio; } this.getPrecio = function(){ return this.precio; } this.setCantidadDec = function(cantidad){ this.cantidad_dec = cantidad; } this.getCantidadDec = function(){ return this.cantidad_dec; } this.setPrecioDec = function(precio){ this.precio_dec = precio; } this.getPrecioDec = function(){ return this.precio_dec; } this.verificar = function(item){ var cantidad = $('cantidad_verif_'+item); var precio = $('precio_verif_'+item); cantidad.value = (isNaN(cantidad.value))? 0 : cantidad.value ; precio.value = (isNaN(precio.value))? 0 : precio.value ; if(parseFloat(cantidad.value) < 0 || parseFloat(cantidad.value) > this.getCantidadDec() || parseFloat(cantidad.value) ==='' || isNaN(parseFloat(cantidad.value))){ cantidad.value = this.getCantidadDec(); } if( parseFloat(precio.value) < 0 || parseFloat(precio.value) > this.getPrecioDec() || parseFloat(precio.value) ==='' || isNaN(parseFloat(precio.value))){ precio.value = this.getPrecioDec(); } if(this.getCantidadDec() != cantidad.value || this.getPrecioDec() != precio.value){ $('modificado_'+item).value = 1; $('observacion_'+item).style.visibility="visible"; var array_tds = $('observacion_'+item).parentNode.parentNode.childNodes; for(t = 0; t< array_tds.length; t++){ td_seleccionado = array_tds[t]; if(td_seleccionado.tagName){ td_seleccionado.style.background = "#FFF9A8"; } } this.totales.calcular(); return true; } else{ $('observacion_'+item).style.visibility="hidden"; $('observacion_'+item).selectedIndex = 0; var array_tds = $('observacion_'+item).parentNode.parentNode.childNodes; for(t = 0; t< array_tds.length; t++){ td_seleccionado = array_tds[t]; if(td_seleccionado.tagName){ td_seleccionado.style.background = "#FFFFFF"; } } this.totales.calcular(); $('modificado_'+item).value = 0; if(this.getCantidad() != cantidad.value || this.getPrecio() != precio.value){ $('modificado_'+item).value = 1; } return false; } } }