Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: hunter18 en 5 Octubre 2010, 03:05 am



Título: Validar campo para que soloa acepte numeros con javascript
Publicado por: hunter18 en 5 Octubre 2010, 03:05 am
Hace años que no toco javascript ni php y necesito algo pequeño y me falta validar mi form.

Quiero que si tiene menos de 8 caracteres diga "error,menor a 8"
Si esta en blanco diga "Ingrese su codigo"
Que solo acepte numeros

Tampoco recuerdo como hacer para que no vaya a insertar_datos.php cuando salgan los errores, espero su ayuda.

Código:
<html>
<head></head>
<body>
<script language="javascript" type="text/javascript">
function valida_envia(){
    //valido el nombre
    if (document.form1.titulo.value.length==0){
       alert("Tiene que escribir su codigo")
       document.form1.titulo.focus()
       return 0;
    }

}
</script>
<form name="form1" action="insertar_datos.php">
codigo:<br><input type="text" name="titulo" maxlength="8"><br>
<input type="submit" value="Enviar" onclick="valida_envia()">
</form>

</body>
</html>


Título: Re: Validar campo para que soloa acepte numeros con javascript
Publicado por: ~ Yoya ~ en 5 Octubre 2010, 03:06 am
Usa expresiones regulares


Título: Re: Validar campo para que soloa acepte numeros con javascript
Publicado por: bomba1990 en 5 Octubre 2010, 03:50 am
Saber si es numero o no con javascript
Para saber si un valor es numero o no utilizamos la función isNaN(numero), si no es número devolverá True y si es número devolverá False.

Un ejemplo sería:

Código
  1.  
  2. isNaN(123) devolverá False
  3.  
  4. isNaN("prueba") devolverá True


Título: Re: Validar campo para que soloa acepte numeros con javascript
Publicado por: hunter18 en 5 Octubre 2010, 05:49 am
Haber si un experto en javascript me ayuda con el codigo, por otro lado intentare probar lo que dicen los user que respondieron, saludos


Título: Re: Validar campo para que soloa acepte numeros con javascript
Publicado por: #!drvy en 5 Octubre 2010, 12:50 pm
Código
  1. <script language="javascript" type="text/javascript">
  2. function valida_envia(){
  3.    //valido el nombre  
  4.    var FiltroRx = /[0-9]{8}/;
  5.    if (document.form1.titulo.value.length < 1)
  6.        {
  7.            alert('Debe escribir su codigo')
  8.            return false
  9.        }
  10.    else if (!FiltroRx.test(document.form1.titulo.value))
  11.        {
  12.            alert('error,menor a 8. (Solo se aceptan numeros)')
  13.            return false
  14.        }
  15.    else
  16.        {
  17.            document.form1.submit()
  18.            return true
  19.        }
  20. }
  21. </script>

Código
  1. <input type="button" value="Enviar" onclick="valida_envia()">

Espero que te sirva.

Saludos


Título: Re: Validar campo para que soloa acepte numeros con javascript
Publicado por: hunter18 en 5 Octubre 2010, 19:46 pm
Ahora el problema es que siempre envia en form aunque salgan los alert's,  haber si alguien me ayuda, dejo el codigo completo, creo es un error en los eventos del form

Código:
<html>
<head></head>
<body>
<script language="javascript" type="text/javascript">

function valida_envia(){
var FiltroRx = /[0-9]{8}/;

    if (document.form1.titulo.value.length==0){
       alert("Ingrese su codigo");
       return false;
       }
    
    else if (!FiltroRx.test(document.form1.titulo.value)){
         alert('error,solo se aceptar 8 digitos')
         return false;
         }
    else {
         return true;
         }
}

//Este Codigo permite Validar que sea un campo Numerico
function Solo_Numerico(variable){
    Numer=parseInt(variable);
    if (isNaN(Numer)){
       return "";
       }
       return Numer;
    }
    function ValNumero(Control){
      Control.value=Solo_Numerico(Control.value);
    }
//fin de function Solo_Numerico
</script>

<form name="form1" action="insertar_datos.php" onSubmit="valida_envia(this)">
codigo:
<input type="text" name="titulo" maxlength="8" onkeyUp="return ValNumero(this);">
<input type="submit" value="Enviar">
</form>

</body>
</html>


Título: Re: Validar campo para que soloa acepte numeros con javascript
Publicado por: ZeroVzla en 11 Noviembre 2010, 01:00 am
Hi!!..

Aummmm en vez de poner el <input type="submit"> pon un <imput type="buttom" onClick(valida_envia()())>

Ahora en la funcion valida_envia() cuando todo este correcto y no t salga ningun alert procedes a enviar el formulario con document.form1.submit() y ya :D...