Foros del Web » Programando para Internet » Javascript »

numeros y comas en un input

Estas en el tema de numeros y comas en un input en el foro de Javascript en Foros del Web. Hola a todos, Estoy haciendo un formulario pero quiero que un input solo reciba numeros y la coma "," (para los decimales). Por la web ...
  #1 (permalink)  
Antiguo 25/04/2009, 21:31
 
Fecha de Ingreso: octubre-2008
Mensajes: 140
Antigüedad: 15 años, 6 meses
Puntos: 1
numeros y comas en un input

Hola a todos,

Estoy haciendo un formulario pero quiero que un input solo reciba numeros y la coma "," (para los decimales).

Por la web encontre el codigo

<script type="text/javascript">
var nav4 = window.Event ? true : false;
function acceptNum(evt){
var key = nav4 ? evt.which : evt.keyCode;
return (key <= 13 || (key >= 48 && key <= 57));
}
</script>
<input name="monto" type="text" style="width:40px" onKeyPress="return acceptNum(event)"/>

he intentado modificarlo para que acepte la coma (tecla 188) pero no resulta

Alguien me puede ayudar???

gracias!!!
  #2 (permalink)  
Antiguo 25/04/2009, 21:43
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: numeros y comas en un input

en lugar de deteccion de teclas, yo usaria expresiones regulares. en el siguiente ejemplo, la validacion se realiza cuando el textbox pierde foco (onblur) pero tambien lo podrias hacer cuando se levante una tecla (onkeyup):
Código:
<input type='text' onblur='validate(this);' />
<script>
function validate(input){
if(/[^0-9,]/.test(input.value))input.value = input.value.replace(/[^0-9,]/g,'');
}
</script>
  #3 (permalink)  
Antiguo 26/04/2009, 14:24
 
Fecha de Ingreso: octubre-2008
Mensajes: 140
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: numeros y comas en un input

Cita:
Iniciado por zerokilled Ver Mensaje
en lugar de deteccion de teclas, yo usaria expresiones regulares. en el siguiente ejemplo, la validacion se realiza cuando el textbox pierde foco (onblur) pero tambien lo podrias hacer cuando se levante una tecla (onkeyup):
Código:
<input type='text' onblur='validate(this);' />
<script>
function validate(input){
if(/[^0-9,]/.test(input.value))input.value = input.value.replace(/[^0-9,]/g,'');
}
</script>
Gracias pero no es exactamente lo que quiero :(
  #4 (permalink)  
Antiguo 04/05/2009, 07:38
 
Fecha de Ingreso: octubre-2008
Mensajes: 140
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: numeros y comas en un input

Ya lo solucioné, el problema era que estaba colocando un nùmero incorrecto a la tecla ",". gracias de todos modos
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 20:23.