Foros del Web » Programando para Internet » Javascript »

Dilema con expresiones y validacion

Estas en el tema de Dilema con expresiones y validacion en el foro de Javascript en Foros del Web. hola, queria pregunatrles, si pueden ayudarme, necesito que solo se puedan ingresar numeros, letras y los signos % o , (coma) Hice un codigo y ...
  #1 (permalink)  
Antiguo 03/06/2013, 15:43
 
Fecha de Ingreso: diciembre-2002
Mensajes: 473
Antigüedad: 21 años, 4 meses
Puntos: 0
Dilema con expresiones y validacion

hola, queria pregunatrles, si pueden ayudarme, necesito que solo se puedan ingresar numeros, letras y los signos % o , (coma) Hice un codigo y anda si pongo otros simbolos, pero si mezclo signos no permitidos con numeros o letras la validacion no anda. como puedo arreglarlo??
mi codigo es:
Código:
txt_lm2 = $('#txt_lm2').val();
               var patt=/[0-9a-zA-Z&,]/;
               
               if(txt_lm2==''){
                  $('#notice_error').text('vacio');
                  $("#notice_error").show().delay(3000).fadeOut(); 
                  return false;
                       
               }                               
                
                
                if(!patt.test(txt_lm2)){
                   
                    $('#notice_error').text('no se permiten mas que alfanumericos, la, o el &');
                    $("#notice_error").show().delay(3000).fadeOut();  
                    return false;  
                }
saludos y gracias desde ya alguna idea
  #2 (permalink)  
Antiguo 03/06/2013, 17:56
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Dilema con expresiones y validacion

Cita:
Iniciado por tico74 Ver Mensaje
hola, queria pregunatrles, si pueden ayudarme, necesito que solo se puedan ingresar numeros, letras y los signos % o , (coma) Hice un codigo y anda si pongo otros simbolos, pero si mezclo signos no permitidos con numeros o letras la validacion no anda. como puedo arreglarlo??
mi codigo es:
Código:
txt_lm2 = $('#txt_lm2').val();
               var patt=/[0-9a-zA-Z&,]/;
               
               if(txt_lm2==''){
                  $('#notice_error').text('vacio');
                  $("#notice_error").show().delay(3000).fadeOut(); 
                  return false;
                       
               }                               
                
                
                if(!patt.test(txt_lm2)){
                   
                    $('#notice_error').text('no se permiten mas que alfanumericos, la, o el &');
                    $("#notice_error").show().delay(3000).fadeOut();  
                    return false;  
                }
saludos y gracias desde ya alguna idea
El problema no está en la expresión sino en la forma de validar, test() de javascript devolverá true ó false según el valor ingresado se ajuste o no al patrón de la expresión regular,
Edito porque vi otra inconsistencia,
Además debés restituir el valor del campo de mensajes de error si no se presta a confusiones, yo haría esto


Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <html lang="es-ar">
  3. <meta charset="utf-8" />
  4. <title>Html5</title>
  5. <script type="text/javascript" src="http://gdriv.es/emprear/css-js/jquery-1.9.0.min.js"></script>
  6.  
  7. <script type="text/javascript">
  8. //<![CDATA[
  9.  
  10. function valida(){
  11. var txt_lm2 = $('#txt_lm2').val();
  12. var patt=/^[0-9a-zA-Z\&\,]+$/;
  13. var verifica = patt.test(txt_lm2);
  14.              
  15.               if(txt_lm2==''){
  16.                  $('#notice_error').text('vacio');
  17.                  return false;
  18.               }else{
  19.                if(verifica == false){
  20.                $('#notice_error').text('no se permiten mas que alfanumericos, la, o el &');
  21.                return false;
  22.                }else{
  23.                  $('#notice_error').text('ok');              
  24.                }
  25.              }                        
  26.                
  27.                
  28.  
  29. }
  30.  
  31.  
  32. //]]>
  33.  
  34.  
  35. </head>
  36. <form action="#" onsubmit="return valida();">
  37. <input type="text" value="" id="txt_lm2" />
  38. <input type="submit" value="validar"/>
  39. </form>
  40. <div id="notice_error">
  41. </div>
  42. </body>
  43. </html>



Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 03/06/2013 a las 18:15

Etiquetas: expresiones, validacion
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 09:12.