Código de JavaScript - Permitir la entrada únicamente de numeros con signo negativo y decimales

Imágen de perfil

Permitir la entrada únicamente de numeros con signo negativo y decimalesgráfica de visualizaciones


JavaScript

estrellaestrellaestrellaestrellaestrella(7)
Publicado el 06 de Mayo del 2014 por Xavi
9.150 visualizaciones desde el 06 de Mayo del 2014. Una media de 70 por semana
Esta función solo permite la entrada de números, el signo de menos (-), y un único punto para los decimales.

Versión 1
estrellaestrellaestrellaestrellaestrella(7)

Publicado el 06 de Mayo del 2014gráfica de visualizaciones de la versión: Versión 1
9.151 visualizaciones desde el 06 de Mayo del 2014. Una media de 70 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

Puedes ver un ejemplo aquí
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="utf-8">
    <title>La Web del Programador - Ejemplo de JavaScript para permitir la entrada unicamente de numeros</title>
    <script>
    /**
     * Función que solo permite la entrada de numeros, un signo negativo y
     * un punto para separar los decimales
     */
    function soloNumeros(e)
    {
        // capturamos la tecla pulsada
        var teclaPulsada=window.event ? window.event.keyCode:e.which;
 
        // capturamos el contenido del input
        var valor=document.getElementById("inputNumero").value;
 
        // 45 = tecla simbolo menos (-)
        // Si el usuario pulsa la tecla menos, y no se ha pulsado anteriormente
        // Modificamos el contenido del mismo añadiendo el simbolo menos al
        // inicio
        if(teclaPulsada==45 && valor.indexOf("-")==-1)
        {
            document.getElementById("inputNumero").value="-"+valor;
        }
 
        // 13 = tecla enter
        // 46 = tecla punto (.)
        // Si el usuario pulsa la tecla enter o el punto y no hay ningun otro
        // punto
        if(teclaPulsada==13 || (teclaPulsada==46 && valor.indexOf(".")==-1))
        {
            return true;
        }
 
        // devolvemos true o false dependiendo de si es numerico o no
        return /\d/.test(String.fromCharCode(teclaPulsada));
    }
    </script>
</head>
 
<body>
    <h1>Ejemplo de JavaScript para permitir la entrada únicamente de
    números</h1>
 
    <p>Esta función solo permite la entrada de números, el signo
    de menos (-), y un único punto para los decimales</p>
 
    <form action="#">
        <input type="text" name="numero" id="inputNumero" onkeypress="return soloNumeros(event);">
        <input type="submit" value="enviar">
    </form>
 
    <p><a href="http://www.lawebdelprogramador.com">La Web del Programador</a></p>
</body>
</html>



Comentarios sobre la versión: Versión 1 (7)

alberto
25 de Marzo del 2016
estrellaestrellaestrellaestrellaestrella
no sirve!! permite repetir el signo de negativo, y tambien el punto que separa decimales... esfuerzate si quieres publicar algo... basico antes de publicar un codigo es validar que valide lo basico.... comprendamos que el usuario final ingresara cualquier cosa... de que sirve hacer un codigo de validacion si finalmente le dejaras al usuario la responsabilidad de ingresar correctamente los valores.... malo! malo! pesimo.. codigo viejo ... espero que hayas mejorado.!
Responder
Imágen de perfil
xve
26 de Marzo del 2016
estrellaestrellaestrellaestrellaestrella
Hola Alberto, yo lo he probado y funciona perfectamente!!!
Lo he probado con Chrome y Firefox... solo permite entrar números, y un signo negativo y un punto decimal.

Estaría bien que en vez de criticar tanto, explicaras exactamente que te pasa!!!
Responder
Juan
26 de Agosto del 2016
estrellaestrellaestrellaestrellaestrella
El código es bueno y sirve mucho más que ud. que lo que hace es criticar, no tiene que ver que el código sea viejo, felicitaciones y gracias a la persona que dejo el código hace varios años y para alberto le deseo que tenga mejor actitud ante la vida si quiere un código mejor pues porque no lo hace alberto?
Responder
Oscar
19 de Octubre del 2016
estrellaestrellaestrellaestrellaestrella
Que $/$%/#"#, el codigo si funciona, antes de criticar prueba bien las cosas y si estuviese mal,,, no importa, no todos somos expertos, habemos algunos que estamos aprendiendo y si vas a criticar, haz criticas constructivas, me imagino que asi es tu vida, solo te critican todo lo que haces, y por eso no superas que otros se atrevan a realizar cosas que tu no haces,,, perdedor es otro(alberto)
Responder
Juan Carlos
11 de Abril del 2016
estrellaestrellaestrellaestrellaestrella
Acabo de probar el código en un ejercicio y funciona a la perfección.

Lo dejo en el siguiente enlace:

http://juancar.neocities.org/Modulo+4/calcu2.html

Muchas gracias por tu ayuda Xavi :-))))))
Responder
Rodrigo Montalvo
06 de Julio del 2016
estrellaestrellaestrellaestrellaestrella
Muy bien gracias
Responder
Jxdeg3
26 de Agosto del 2016
estrellaestrellaestrellaestrellaestrella
Lo he probado en el enlace, una vez que ya en la pagina y comprobado que realmente hace lo que debe, sin embargo no me permite eliminar el contenido una vez ingresado. Entiendo a la perfeccion que realice el ingreso, sin embargo pienso que tambien deberia tener la opcion de eliminar el ultimo caracter añadido con la tecla de "retroceso".
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s2664