Académique Documents
Professionnel Documents
Culture Documents
Creará una página de un sitio Web que permita a los visitantes solicitar una
reserva. Dado que la finalidad consiste en ilustrar la validación, la clase de reserva
no es importante en este contexto (por ejemplo, podría ser para un restaurante,
una sala de reuniones de un centro social u otro tipo de reserva) y la página no
procesa realmente la reserva.
Nota de seguridad:
Agregar controles
Utilizará un número reducido de controles para pedir al usuario la información
necesaria para la reserva.
Para agregar controles y texto
Nota:
Nota:
Más adelante agregará otra comprobación para asegurarse de que los usuarios
escriben una fecha válida.
ControlToValidate textEmail
Enlaza el control validador al cuadro de texto cuyo contenido
desea validar.
Display Dinámico
Especifica que el control sólo representa (y ocupa espacio en
la página) si es necesario para mostrar un error.
Text *
Para indicar que un campo es obligatorio, se suele utilizar
como convención un signo en forma de estrella. Sólo se
mostrará este texto en caso de error.
ValidationGroup AllValidators
Al igual que ocurre con los botones de opción, es posible
reunir los validadores en grupos que se tratan como una
unidad. Más adelante se ofrece información sobre cómo
agrupar los validadores.
3. Se agrega una prueba a lo que ha hecho para asegurarse de que el usuario
escribe una dirección de correo electrónico. El control validador realiza todas
las operaciones de comprobación y presentación de errores, lo que requiere
que agregue código a la página.
4. Desde el grupo Validación del Cuadro de herramientas, arrastre un control
RegularExpressionValidator y colóquelo junto al control
RequiredFieldValidator recién agregado.
5. Establezca las siguientes propiedades del control
RegularExpressionValidator:
a. Propiedad b. Ajuste
ControlToValidate textEmail
Está validando de nuevo la entrada del usuario
en el cuadro correspondiente al correo
electrónico.
Display Dinámico
ValidationGroup AllValidators
Al igual que ocurre con los botones de opción, es
posible reunir los validadores en grupos que se
tratan como una unidad.
6. Con el control RegularExpressionValidator todavía seleccionado, haga clic en
el botón de puntos suspensivos en el cuadro ValidationExpression de la
ventana Propiedad.
Las expresiones regulares constituyen un lenguaje que se puede utilizar
para buscar con precisión modelos definidos en cadenas. En el control
RegularExpressionValidator, defina una expresión regular para el modelo
válido (en este caso, el modelo de una dirección de correo electrónico
válida).
El Editor de expresiones regulares contiene una lista de expresiones regulares
utilizadas con frecuencia para que pueda usar el control validador sin tener
que conocer la sintaxis de las expresiones regulares.
7. En la lista Expresiones estándar, haga clic en Dirección de correo electrónico de
Internet.
La expresión regular para una dirección de correo electrónico se coloca en el
cuadro Expresión de validación.
8. Haga clic en Aceptar para cerrar el cuadro de diálogo.
9. Agregue otro control RequiredFieldValidator según las instrucciones de los
pasos 1 a 3. Sin embargo, en esta ocasión deberá enlazarlo al cuadro de
texto textNumberInParty y establecer su propiedad ErrorMessage como
Indique cuántas personas hay en la fiesta.
10. Desde el grupo Validación del Cuadro de herramientas, arrastre un control
RangeValidator y colóquelo junto al control RequiredFieldValidator recién
agregado.
11. Establezca las siguientes propiedades del control RangeValidator:
a. Propiedad b. Ajuste
ControlToValidate textNumberInParty
Display Dinámico
MinimumValue 1
En esta aplicación, para una reserva se requiere
por lo menos una persona.
Type Entero
ValidationGroup AllValidators
12. El control RangeValidator realiza dos funciones: garantiza que los datos que
introduce un usuario son numéricos y comprueba que el número introducido
se encuentra entre los valores mínimo y máximo especificados.
Probar la página
Ahora puede probar los controles validadores que tiene hasta el momento.
ControlToValidate textPreferredDate
Display Dinámico
ErrorMessage Escriba una fecha en el formato m/d/aaaa.
ValidationGroup AllValidators
3. Haga doble clic en el control CustomValidator con objeto de crear un
controlador para su evento ServerValidate y, a continuación, agregue el
código resaltado que se muestra a continuación:
protected void CustomValidator1_ServerValidate(object source,
ServerValidateEventArgs args)
{
try { DateTime.ParseExact(args.Value, "d",
System.Globalization.DateTimeFormatInfo.InvariantInfo);
args.IsValid = true; } catch { args.IsValid =
false; }
}
Este código se ejecuta cuando el usuario envía la página. El código
interactúa con el control validador mediante el objeto
ServerValidateEventArgs (args) pasado al controlador. El valor que el
usuario ha especificado en el cuadro de texto textPreferredDate se pasa
como la propiedad Value del objeto args. Después de haber comprobado
que la entrada del usuario es válida, establezca la propiedad IsValid del
objeto args en true o false. Si la establece en false, el validador mostrará su
mensaje de error.
En este ejemplo, el código utiliza un bloque try-catch para determinar si la
entrada del usuario se puede convertir en un objeto DateTime. Si el usuario
especifica un valor no válido (que no se ajusta a una fecha de formato
m/d/aaaa), el método ParseExact del objeto DateTime produce una
excepción y se ejecuta el bloque Catch.
Nota:
Copiar código
<script language="javascript">
function validateDate(oSrc, args)
{
var iDay, iMonth, iYear;
var arrValues;
arrValues = args.Value.split("/");
iMonth = arrValues[0];
iDay = arrValues[1];
iYear = arrValues[2];
return true;
}</script>
Nota:
Nota:
ID checkPhoneConfirmation
AutoPostBack True
Cuando el usuario haga clic en la casilla, la página realizará
una acción de ida y vuelta y habilitará o no el cuadro de
texto y la validación de éste.
CausesValidation False
No se producirá automáticamente la validación al hacer clic
en CheckBox.
ID textPhoneNumber
Enabled False
No se habilitará el cuadro de texto hasta que el
usuario haga clic en la casilla.
3. Escriba un texto como Número de teléfono: como un título junto al cuadro de
texto correspondiente al número de teléfono.
4. Desde el grupo Validación del Cuadro de herramientas, arrastre un control
RequiredFieldValidator a la página y establezca las propiedades siguientes:
Propiedad Ajuste
ID validatorRequiredPhoneNumber
No estableció el id. de los controles validadores
anteriormente en el tutorial, pero en este caso hará
referencia al control validador en código, por lo que le
resultará útil proporcionarle un id. nemotécnico.
ControlToValidate textPhoneNumber
Display Dinámico
Text *
ID validatorRegExPhoneNumber
ControlToValidate textPhoneNumber
Display Dinámico
Nota: