Foros del Web » Programando para Internet » Javascript »

validacion de numeros

Estas en el tema de validacion de numeros en el foro de Javascript en Foros del Web. Hola amigos, Necesito hacerle la validación a un campo de texto, en donde la cantidad minima de pedidos sea 40, Si pone por ejemplo 30 ...
  #1 (permalink)  
Antiguo 23/10/2008, 14:03
Avatar de hardy2  
Fecha de Ingreso: noviembre-2007
Mensajes: 129
Antigüedad: 16 años, 5 meses
Puntos: 0
validacion de numeros

Hola amigos,
Necesito hacerle la validación a un campo de texto, en donde la cantidad minima de pedidos sea 40,
Si pone por ejemplo 30 no acepte y salga un alert.

Como haria este codigo?

Gracias por su ayuda
  #2 (permalink)  
Antiguo 23/10/2008, 14:23
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: validacion de numeros

Con una condicional if:
Código javascript:
Ver original
  1. if (valor<40) {
  2.    alert("Valor no válido");
  3.    return false;
  4. }
Saludos .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 23/10/2008, 14:24
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 17 años, 5 meses
Puntos: 56
Respuesta: validacion de numeros

Código PHP:
<script type="text/javascript">
function 
verif(f) {
if (
f.cantidad.value 40) {
alert('Es menos que 40');
return 
false;
}
}
</script>

<form name="formulario" id="formulario" onSubmit="return verif(this)">
<input name="cantidad" id="cantidad" />
<input type="submit" /> 
Lee más en http://www.webestilo.com/javascript/js06.phtml
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #4 (permalink)  
Antiguo 23/10/2008, 14:29
Avatar de hardy2  
Fecha de Ingreso: noviembre-2007
Mensajes: 129
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: validacion de numeros

hola, gracias por responderme, otra pregunta...
si quiero que solo sean numeros y no letras.., que funcion o codigo le debo adicionar..

gracias , de antemano
  #5 (permalink)  
Antiguo 23/10/2008, 14:32
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: validacion de numeros

En las FAQ's hay un código para permitir solo números en un input.

Saludos .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 23/10/2008, 14:46
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: validacion de numeros

solo te adelanto que debes usar una expresión regular. No he visto la FAQ, pero me imagino que usan una expresión regular pues es la forma mas aconsejable.
  #7 (permalink)  
Antiguo 23/10/2008, 18:09
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: validacion de numeros

Cita:
Iniciado por hardy2 Ver Mensaje
hola, gracias por responderme, otra pregunta...
si quiero que solo sean numeros y no letras.., que funcion o codigo le debo adicionar..

gracias , de antemano
Solo usa la función: isNaN, devuelve true cuando no es número y false cuando si lo es.
  #8 (permalink)  
Antiguo 24/10/2008, 08:31
Avatar de hardy2  
Fecha de Ingreso: noviembre-2007
Mensajes: 129
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: validacion de numeros

grracias por responder, si me habian dicho que utilizara esa funcion pero donde la pongo, la estoy haciendo asi
if(isNaN(F1.numero1.value < 40))
{
alert('Deben ser minimo 40 unidades')
return(1)
}

y no me funciona asi,

donde pongo la funcion??

gracias..

Cita:
Iniciado por ElJavista Ver Mensaje
Solo usa la función: isNaN, devuelve true cuando no es número y false cuando si lo es.
  #9 (permalink)  
Antiguo 24/10/2008, 08:40
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: validacion de numeros

Prueba haciendo otra comparación, así:
Código javascript:
Ver original
  1. if (isNaN(valor)) {
  2.      alert("Solo se permiten números");
  3.      return false;
  4. }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #10 (permalink)  
Antiguo 24/10/2008, 08:48
Avatar de hardy2  
Fecha de Ingreso: noviembre-2007
Mensajes: 129
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: validacion de numeros

gracias por responderme:
lo que necesito es que me valide que sean numeros y que sean minimo 40 pedidos, el codigo que tengo es:
if(isNaN(F1.numero1.value < 40))
{
alert('Deben ser minimo 40 unidades')
return(1)
}

pero igual no me sigue dando,

que error tiene el codogo, gracias...
Cita:
Iniciado por David el Grande Ver Mensaje
Prueba haciendo otra comparación, así:
Código javascript:
Ver original
  1. if (isNaN(valor)) {
  2.      alert("Solo se permiten números");
  3.      return false;
  4. }
  #11 (permalink)  
Antiguo 24/10/2008, 08:51
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: validacion de numeros

Es que si te fijas, esto:
Código javascript:
Ver original
  1. valor<40
Devolverá true o false, y ese valor true o false no tiene sentido pasar como parámetro a isNaN, mejor hazlo con dos condiciones como te dije en el otro mensaje.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #12 (permalink)  
Antiguo 24/10/2008, 09:52
Avatar de hardy2  
Fecha de Ingreso: noviembre-2007
Mensajes: 129
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: validacion de numeros

ok, voy a intentarlo,
te agradezco mucho tu ayuda!!

saludos!!

Cita:
Iniciado por David el Grande Ver Mensaje
Es que si te fijas, esto:
Código javascript:
Ver original
  1. valor<40
Devolverá true o false, y ese valor true o false no tiene sentido pasar como parámetro a isNaN, mejor hazlo con dos condiciones como te dije en el otro mensaje.
  #13 (permalink)  
Antiguo 24/10/2008, 09:56
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: validacion de numeros

También podría ser en un mismo if poner las dos condiciones:
Código javascript:
Ver original
  1. if ((isNaN(valor)) || (valor < 40)) {
  2.    alert("Valor no válido");
  3.    return false;
  4. }
Saludos .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #14 (permalink)  
Antiguo 24/10/2008, 10:37
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: validacion de numeros

if(isNaN(valor)){
alert("Inserta solo numeros");
}
if(valor<40){
alert('Inserta un numero mayor a 40');
}

Esa opción es mejor desde mi punto de vista ya que no solo dice valor no valido sino por que el valor no es valido lo cual es mejor desde un punto de vista de usabilidad.
  #15 (permalink)  
Antiguo 25/10/2008, 16:10
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: validacion de numeros

Bueno a mi criterio debería ser así:

if (isNaN(valor)) {
alert("Solo se admite valores numéricos");
} else {
if (valor < 40) {
alert("Inserte un número mayor a 40");
}
}
  #16 (permalink)  
Antiguo 25/10/2008, 18:17
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: validacion de numeros

No hay diferencia significativa entre las dos piezas de código, al final ambas hacen el mismo proceso y dan el mismo resultado. Ademas, ya que usas else, podrías usar un else if y ahorrarte una linea.

De cualquier modo es un buen aporte que sirve para ilustrar la flexibilidad del lenguaje.

Saludos.
  #17 (permalink)  
Antiguo 27/10/2008, 13:58
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: validacion de numeros

Ese no es el punto (ahorrarse una línea) tú código también hace lo mismo, pero el mío tiene más lógica y es más eficiente. Por qué? Qué pasa cuando alguien introduce un valor no numerico? El mío lo evalúa una vez y lo rechaza, en cambio el tuyo lo evalúa primero como número, después lo evalúa si es menor que 40. Hace la segunda evaluación cuando no debe hacerla porque ya se ha determinado que no es número, entonces por qué va a evaluar si es menos que 40? En cambio mi código solo evalúa si es menor que 40 cuando ya ha determinado que es un número lo que se ha introducido. Tiene más lógica y es más eficiente. Esa es la diferencia. Pero claro que hace lo mismo.
  #18 (permalink)  
Antiguo 27/10/2008, 14:25
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: validacion de numeros

Si, tienes razón en lo que dices. Aun que creo que no entendiste lo que te dije en cuanto a ahorrarse una linea.

Saludos.
  #19 (permalink)  
Antiguo 28/10/2008, 20:29
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: validacion de numeros

Ah ok, ahora entiendo, un else if, claro. Tienes razón.
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 13:35.