-
-
Save Javlopez/944773 to your computer and use it in GitHub Desktop.
<script type="text/javascript"> | |
<!-- | |
function filterFloat(evt,input){ | |
// Backspace = 8, Enter = 13, ‘0′ = 48, ‘9′ = 57, ‘.’ = 46, ‘-’ = 43 | |
var key = window.Event ? evt.which : evt.keyCode; | |
var chark = String.fromCharCode(key); | |
var tempValue = input.value+chark; | |
if(key >= 48 && key <= 57){ | |
if(filter(tempValue)=== false){ | |
return false; | |
}else{ | |
return true; | |
} | |
}else{ | |
if(key == 8 || key == 13 || key == 0) { | |
return true; | |
}else if(key == 46){ | |
if(filter(tempValue)=== false){ | |
return false; | |
}else{ | |
return true; | |
} | |
}else{ | |
return false; | |
} | |
} | |
} | |
function filter(__val__){ | |
var preg = /^([0-9]+\.?[0-9]{0,2})$/; | |
if(preg.test(__val__) === true){ | |
return true; | |
}else{ | |
return false; | |
} | |
} | |
--> | |
</script> | |
<input type="text" name="moneda nac" id="moneda_nac" value="10" onkeypress="return filterFloat(event,this);"/> |
Seria mucha molestia explicar que hacen algunas de las lineas de codigo, soy nuevo en javascript y hay algunas cosas que no entendí, porfavor se lo agradecería :D
Hola, podrías indicar cuales son las líneas en las que tienes dudas y quizás entre todos te podamos ayudar 👍
excelente código gracias!!!
Funciona perfecto. Gracias!
muchas gracias,
lo probe yo mismo habia omitido un framento de codigo gracias funciona excelente
Buenisimo!!
muy bueno!
Excelente mi gracias
gracias carnal, esta perfecto
Hey creo que sigue siendo util, voy a dejar aquí un update de la misma.
<script type="text/javascript">
<!--
function filterFloat(evt,input){
// Backspace = 8, Enter = 13, ‘0′ = 48, ‘9′ = 57, ‘.’ = 46, ‘-’ = 43
var key = window.Event ? evt.which : evt.keyCode;
var chark = String.fromCharCode(key);
var tempValue = input.value+chark;
var isNumber = (key >= 48 && key <= 57);
var isSpecial = (key == 8 || key == 13 || key == 0 || key == 46);
if(isNumber || isSpecial){
return filter(tempValue);
}
return false;
}
function filter(__val__){
var preg = /^([0-9]+\.?[0-9]{0,2})$/;
return (preg.test(__val__) === true);
}
-->
</script>
<input type="text" name="moneda nac" id="moneda_nac" value="10" onkeypress="return filterFloat(event,this);"/>
Espero que siga siendo util, saludos
Gracias bro!!
Consulta y si quiero editar el input, no me permite a no ser que elimine todo el valor en caso tenga el punto porque si es entero si permite :c
Hey creo que sigue siendo util, voy a dejar aquí un update de la misma.
<script type="text/javascript"> <!-- function filterFloat(evt,input){ // Backspace = 8, Enter = 13, ‘0′ = 48, ‘9′ = 57, ‘.’ = 46, ‘-’ = 43 var key = window.Event ? evt.which : evt.keyCode; var chark = String.fromCharCode(key); var tempValue = input.value+chark; var isNumber = (key >= 48 && key <= 57); var isSpecial = (key == 8 || key == 13 || key == 0 || key == 46); if(isNumber || isSpecial){ return filter(tempValue); } return false; } function filter(__val__){ var preg = /^([0-9]+\.?[0-9]{0,2})$/; return (preg.test(__val__) === true); } --> </script> <input type="text" name="moneda nac" id="moneda_nac" value="10" onkeypress="return filterFloat(event,this);"/>
Espero que siga siendo util, saludos
Se confirma que sigue gustando. Seria mucha molestia incluir que como mínimo también tenga 2 decimales?
El código está genial, me funciono, pero duda como limito para que solo sea un entero y dos decimales ejemplo 1.40.
<input type="text" name="moneda nac" id="moneda_nac" value="10" onkeypress="return filterFloat(event,this);"/>
Como se haría para reemplazar el monto, sin tener que borrar todo el contenido del input?. Ejemplo, cuando escribes por ejemplo 5.55 y quieres reemplazar el entero, tienes que ir borrando todo hasta que llega al numero entero
Alguien sabe como editar el monto sin tener que borrar todo el contenido del input y volver a digitar el valor?
Muchas gracias por tu trabajo, me ahorraste mucho tiempo. :)