Foros del Web » Programando para Internet » Javascript »

adverti acerca de ciertos valores

Estas en el tema de adverti acerca de ciertos valores en el foro de Javascript en Foros del Web. Nuevamente aqui. Lo que nesecito es que si en un input type=text, los valores decimales son distintos a .25 o .50 o .75 o .00 ...
  #1 (permalink)  
Antiguo 02/05/2003, 08:01
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
adverti acerca de ciertos valores

Nuevamente aqui.

Lo que nesecito es que si en un input type=text, los valores decimales son distintos a .25 o .50 o .75 o .00 salga un alert y advierta al usuario acerca de esto para que modifique el valor.

ejemplo: 10.36 = alert('los valores deben ser .25 o .50 o...')

10.50 = ok, continua

gracias
  #2 (permalink)  
Antiguo 02/05/2003, 08:26
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
¿Los decimales son obligados? o a veces habrán sin decimales?
  #3 (permalink)  
Antiguo 02/05/2003, 08:49
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
puede que los valores sean enteros ejemplo:
15, en este caso deberia evaluarlo como .00
gracias
  #4 (permalink)  
Antiguo 02/05/2003, 09:14
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
Bueno, a ver si te sirve este ejemplo:



<script language="JavaScript">
function pepe(cual)
{
if(cual != ""){
if(isNaN(cual)){alert('debes poner números');return false}
else{
punto = /\./
if(cual.search(punto) != -1)
{
pat = /[0-9]+.00|25|50|75/
if(!pat.test(cual))
{alert("Los decimales deben ser 00, 25, 50 o 75");return false}
else {alert('tó bien');return true}
}}}}
</script>
</head>

<body>
<input type="text" name="textfield" onblur="pepe(this.value)">
</body>

Si te sirve y tienes algún problema para adaptarlo me lo dices
  #5 (permalink)  
Antiguo 02/05/2003, 09:28
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284


Tunait: Excelente... No lo he probado, pero la sencillez con que has usado las expresiones regulares en un tema que se podía ver difícil lo puntúo con sobresaliente.

Un saludote...
  #6 (permalink)  
Antiguo 02/05/2003, 09:48
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
Que problema voy a tener si anda perfecto!!!

Genial, no entendi casi nada, lo mio es vbscript, again, debo decir...
que jugadora!!!

Muchas Gracias
  #7 (permalink)  
Antiguo 02/05/2003, 10:01
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
una cosita mas, seria buenisimo que despues del alert, tabule nuevamente en el input que contiene el erro para volver a ingresar el valor.

gracias
  #8 (permalink)  
Antiguo 02/05/2003, 10:09
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 9 meses
Puntos: 381
Claro,

agrega lo que puse en negritas (o reemplaza el script completo)

<script language="JavaScript">
function pepe(cual,donde)
{
if(cual != ""){
if(isNaN(cual)){alert('debes poner números');
donde.focus();
return false}
else{
punto = /\./
if(cual.search(punto) != -1)
{
pat = /[0-9]+.00|25|50|75/
if(!pat.test(cual))
{alert("Los decimales deben ser 00, 25, 50 o 75");
donde.focus();
return false}
else {alert('tó bien');return true}
}}}}
</script>
</head>

<body>
<input type="text" name="textfield" onblur="pepe(this.value,this)">
</body>



Caricatos, gracias por esa felicitación

Un saludo a los dos
  #9 (permalink)  
Antiguo 02/05/2003, 10:23
Avatar de Juansan  
Fecha de Ingreso: abril-2001
Mensajes: 203
Antigüedad: 23 años, 1 mes
Puntos: 0
listo, espectacular, no molesto mas.
Gracias
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 12:12.