Foros del Web » Programando para Internet » ASPX (.net) »

Problema con expresion regular

Estas en el tema de Problema con expresion regular en el foro de ASPX (.net) en Foros del Web. Saludos a todos espero alguien me pueda ayudar tengo una paguina ASP.net framework 3.5 y tengo varios controles de usuario textbox y me gustaria hacer ...
  #1 (permalink)  
Antiguo 03/05/2011, 11:57
 
Fecha de Ingreso: diciembre-2003
Mensajes: 595
Antigüedad: 20 años, 4 meses
Puntos: 1
Problema con expresion regular

Saludos a todos espero alguien me pueda ayudar tengo una paguina ASP.net framework 3.5 y tengo varios controles de usuario textbox y me gustaria hacer una validacion de expresiones regulares del lado del cliente con java script ya que usando las expresiones regulares del lado del servidor hago postback y no me sirve eso bueno el problema es el siguiente tengo una funcion en javascript que es la siguiente

function validauser(campo) {
var RegExPattern = /[A-Za-z\s]/;
var errorMessage = 'valor Incorrecta.';
if ((campo.value.match(RegExPattern)) && (campo.value != '')) {
alert('valor Correcta');
} else {
alert(errorMessage);
campo.focus();
}
}

donde quiero que me valide que los datos que metan sean solo caracteres y de no ser asi me envie el mensaje de alerta que le pinto y la forma que la invoco es la siguiente

<asp:TextBox ID="TextBox5" onchange="return validauser(this.value)" runat="server"></asp:TextBox>


pero me envia error en la linea del if alguien podria decirme si estoy haciendo algo mal se los agradeceria
  #2 (permalink)  
Antiguo 03/05/2011, 14:55
Avatar de jaullo  
Fecha de Ingreso: abril-2009
Mensajes: 994
Antigüedad: 15 años
Puntos: 30
Respuesta: Problema con expresion regular

Hola,

Podrias hacer una validacion un poco mas sencilla, algo asi
<SCRIPT language=Javascript>
<!--
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return true;

return false;
}
//-->
</SCRIPT>

<asp:TextBox ID="TextBox1" onkeypress="return isNumberKey(event)" runat="server"></asp:TextBox>

Saludos,
__________________
http://geekswithblogs.net/jaullo/Default.aspx
Si te he ayudado regalame Karma positivo!!!
  #3 (permalink)  
Antiguo 03/05/2011, 14:58
 
Fecha de Ingreso: diciembre-2003
Mensajes: 595
Antigüedad: 20 años, 4 meses
Puntos: 1
Respuesta: Problema con expresion regular

Es correcto lo que me dices y te agradesco la funcion pero el objetivo de usar expresiones regulares y no la funcion que me recomiendas es que no puedo prohibirle al usuario nada solo indicarle que algun valor que alla metido esta mal
  #4 (permalink)  
Antiguo 03/05/2011, 15:05
Avatar de jaullo  
Fecha de Ingreso: abril-2009
Mensajes: 994
Antigüedad: 15 años
Puntos: 30
Respuesta: Problema con expresion regular

Hola,

Y porque no utilizas el regularExpressionValidator de asp.net, veras que no te recarga el postback y de igual forma muestras el mensaje de error
Código ASP:
Ver original
  1. <asp:RegularExpressionValidator runat="server"
  2.       id="regexpSSN" ControlToValidate="txtSSN"
  3.       ValidationExpression="/[A-Za-z\s]/"
  4.       ErrorMessage = "You error message"
  5.       Display="Dynamic" />
__________________
http://geekswithblogs.net/jaullo/Default.aspx
Si te he ayudado regalame Karma positivo!!!
  #5 (permalink)  
Antiguo 03/05/2011, 15:10
 
Fecha de Ingreso: diciembre-2003
Mensajes: 595
Antigüedad: 20 años, 4 meses
Puntos: 1
Respuesta: Problema con expresion regular

Cita:
Iniciado por jaullo Ver Mensaje
Hola,

Y porque no utilizas el regularExpressionValidator de asp.net, veras que no te recarga el postback y de igual forma muestras el mensaje de error
Código ASP:
Ver original
  1. <asp:RegularExpressionValidator runat="server"
  2.       id="regexpSSN" ControlToValidate="txtSSN"
  3.       ValidationExpression="/[A-Za-z\s]/"
  4.       ErrorMessage = "You error message"
  5.       Display="Dynamic" />
Esa es buena opcion no la he usado, porque normalmente uso Regex pero me tarda un par de segundos y es mucho tiempo gracias por tu aportacion voy a probar lo que me mencionas

Etiquetas: expresion, regular, aspx
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 03:30.