Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/01/2013, 18:35
nexusdata
 
Fecha de Ingreso: enero-2013
Mensajes: 38
Antigüedad: 11 años, 10 meses
Puntos: 0
problema son expresiones regulares

hola amigos del foro primera ves que posteo , tengo un problema usando dicha funciones regulares, verán quiero usarla para asegurarme que un elemento de un formulario este entre 1 y 12 cuando el usuario lo coloque, que solo le permita colar un numero entre uno y doce mas nada se le seria permitido consegui armar esta funcion regular que haci ese cometido pero no funciona la coloco en mi script y no lo toma en cuenta e aqui el codigo para explicarme mejor.



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Validar entrada de datos</title>
<script type="text/javascript">

function validar2(e) {
tecla = (document.all) ? e.keyCode : e.which;
if (tecla==8) return true;
patron = /^([0-1]?[0-2]|[0-9])$/ ; // aqui el detalle ignora la epresion regular
te = String.fromCharCode(tecla);
return patron.test(te);

}

</script>
</head>

<body>
<form action="#" onSubmit="javascript:document.form.reset();" method="post">
<p><input type="text" name="textfield" size="2" maxlength="2" onkeypress="return validar2(event)" /><br />
</p>
<input type="submit" > dale
</form>
</body>
</html>




aqui en el script a medida de que la persona introduce los datos voy validando que solo pueda ser entre uno y doce, pero lo ignora , esta forma la quiero usar para asegurarme que el campo meses en un formulario este entre uno y 12 , porfavor si alguien tiene alguna forma de resolver este dilema le estare eternamente agradecido