Validar los datos introducidos por el usuario en una página de formularios Web Forms

Esta practica muestra cómo utilizar los controles validadores de ASP.NET para comprobar los datos proporcionados por el usuario en una página Web. Trabajará con controles que realizan todas las comprobaciones automáticamente, sin necesidad de código. También creará un validador que personalizará mediante código; de ese modo se ilustra cómo se puede agregar lógica al marco de trabajo de validación en la página. Finalmente, obtendrá información acerca de cómo se pueden validar condicionalmente los datos proporcionados por el usuario, de acuerdo con las opciones que elige éste en una página. 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. En la página que va a crear se pedirá al usuario una dirección de correo electrónico, el número de personas para las que solicita reserva y una fecha preferida. La página también permite al usuario solicitar confirmación telefónica de la reserva. (La opción predeterminada para esta página, si se implementase, sería una confirmación por correo electrónico). Nota de seguridad: De manera predeterminada, la página de formularios Web Forms comprueba que usuarios malintencionados no estén intentando enviar script a la aplicación. Crear el sitio y la página Web En la primera parte creará un sitio Web y una página en la que podrá trabajar con estilos. Para crear un sitio Web del sistema de archivos 1. Abra Visual Studio. 2. En el menú Archivo, haga clic en Nuevo Sitio Web. Aparece el cuadro de diálogo Nuevo sitio Web. 3. En la lista Lenguaje, haga clic en el lenguaje de programación con el que prefiera trabajar. El lenguaje de programación que elija será el lenguaje predeterminado de su sitio Web, sin embargo, también puede establecer el lenguaje de programación de cada página de forma individual. 4. En Plantillas instaladas de Visual Studio, haga clic en Sitio Web de ASP.NET. 5. En el cuadro Ubicación, escriba el nombre de la carpeta en la que desea conservar las páginas de su sitio Web. Por ejemplo, escriba el nombre de carpeta C:\WebSites. 6. Haga clic en Aceptar. Visual Studio crea la carpeta y una nueva página denominada Default.aspx. Agregar controles Utilizará un número reducido de controles para pedir al usuario la información necesaria para la reserva.

Escriba el texto delante de los cuadros de texto como títulos. Haga doble clic en el botón Submit Request con objeto de crear un controlador para su evento Click y. Desde el grupo Estándar del Cuadro de herramientas. TextBox TextBox TextBox Button Control b. EventArgs e) { if (Page. El código servirá de ayuda en las pruebas posteriores.".Text = "". a. ID: textEmail ID: textNumberInParty ID: textPreferredDate ID: buttonSubmit Text: Enviar solicitud ValidationGroup: AllValidators ID: labelMessage Text: (en blanco) Propiedades Label Nota: El diseño exacto de la página no es importante. arrastre los controles siguientes a la página y establezca sus propiedades tal como se indica. 4. a continuación. como Enviar una reserva. { } labelMessage. no realiza ningún procesamiento real. Sin embargo. 6. agregue el código resaltado que se muestra a continuación: protected void Page_Load(object sender.Text = "Your reservation has been processed. haga doble clic en un área en blanco en la página para crear un controlador Page_Load y. 3. Cambie a la vista Diseño. EventArgs e) { labelMessage. 5. Cambie a la vista Diseño. Escriba un encabezado de página. a continuación. la presentación del mensaje le permitirá probar más adelante en el tutorial el efecto de la validación. . 2.Para agregar controles y texto 1.IsValid) } El controlador del botón sólo muestra un mensaje. } Este código borra el mensaje que muestra la página después de la validación completa. agregue el código resaltado que se muestra a continuación: protected void buttonSubmit_Click(object sender.

Se requiere la dirección de correo electrónico. es posible reunir los validadores en grupos que se tratan como una unidad. no es viable comprobar si la dirección de correo electrónico es real. Se agrega una prueba a lo que ha hecho para asegurarse de que el usuario escribe una dirección de correo electrónico. Sólo se mostrará este texto en caso de error. lo que requiere que agregue código a la página. Para agregar una validación básica 1. arrastre un control RequiredFieldValidator y colóquelo junto al cuadro de texto textEmail. Display ErrorMessage Text ValidationGroup 3. Desde el grupo Validación del Cuadro de herramientas. • Se necesita la fecha preferida. Puede agregar todos estos criterios de validación mediante controles validadores.com. sí se puede comprobar que se ajusta al modelo correspondiente a las direcciones de correo electrónico). Muestra texto en un resumen de error. 2.Agregar validación básica Para su sistema de reservas imaginario. Desde el grupo Validación del Cuadro de herramientas. que configurará más adelante en el tutorial. por ejemplo. Cambie a la vista Diseño. que debe ser un valor numérico. • También es necesario el número de personas. Establezca las siguientes propiedades del control RequiredFieldValidator: Propiedad ControlToValidate Ajuste textEmail Enlaza el control validador al cuadro de texto cuyo contenido desea validar. 4. Nota: Más adelante agregará otra comprobación para asegurarse de que los usuarios escriben una fecha válida. necesitará que se realicen las siguientes comprobaciones de validación: • La dirección de correo electrónico es obligatoria y su formato tiene que ser correcto. alguien@ejemplo. . * Para indicar que un campo es obligatorio. AllValidators Al igual que ocurre con los botones de opción. que se encargan de realizar las comprobaciones y muestran los errores automáticamente. Dinámico Especifica que el control sólo representa (y ocupa espacio en la página) si es necesario para mostrar un error. no obstante. Más adelante se ofrece información sobre cómo agrupar los validadores. (Por lo general. se suele utilizar como convención un signo en forma de estrella. arrastre un control RegularExpressionValidator y colóquelo junto al control RequiredFieldValidator recién agregado. El control validador realiza todas las operaciones de comprobación y presentación de errores.

Agregue otro control RequiredFieldValidator según las instrucciones de los pasos 1 a 3. 7. defina una expresión regular para el modelo válido (en este caso. haga clic en Dirección de correo electrónico de Internet. el modelo de una dirección de correo electrónico válida). Establezca las siguientes RegularExpressionValidator: a. 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. 11. Establezca las siguientes propiedades del control RangeValidator: a. . Ajuste ControlToValidate Display ErrorMessage textNumberInParty Dinámico Escriba un número entre 1 y 20 para indicar el número de las personas en la fiesta. AllValidators Al igual que ocurre con los botones de opción. En la lista Expresiones estándar. Sin embargo. haga clic en el botón de puntos suspensivos en el cuadro ValidationExpression de la ventana Propiedad. Un mensaje de error más largo. Un mensaje de error corto. Formato no válido. En el control RegularExpressionValidator. Propiedad b. 9. Desde el grupo Validación del Cuadro de herramientas. 10. Las expresiones regulares constituyen un lenguaje que se puede utilizar para buscar con precisión modelos definidos en cadenas. 8. Haga clic en Aceptar para cerrar el cuadro de diálogo. Display ErrorMessage Text ValidationGroup 6. es posible reunir los validadores en grupos que se tratan como una unidad. Propiedad b. arrastre un control RangeValidator y colóquelo junto al control RequiredFieldValidator recién agregado. Con el control RegularExpressionValidator todavía seleccionado.xyz. 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. Dinámico Las direcciones de correo electrónico deben estar en el formato nombre@dominio. propiedades Ajuste del control ControlToValidate textEmail Está validando de nuevo la entrada del usuario en el cuadro correspondiente al correo electrónico.5. La expresión regular para una dirección de correo electrónico se coloca en el cuadro Expresión de validación.

Probar la página Ahora puede probar los controles validadores que tiene hasta el momento. verá el mensaje Se ha procesado su reserva. sin script de cliente. Después de haber confirmado que esa validación funciona según lo previsto. De hecho. En ocasiones quizá desee que la información de los errores se muestre de otro modo. Compruebe que sólo se pueden escribir valores numéricos entre el 1 y el 20 en el cuadro de texto Número de personas de la fiesta. Presione CTRL+F5 para ejecutar la página. se realiza de nuevo la misma comprobación de validación cuando se envía la página). los controles validadores muestran el texto de los errores en contexto. un valor arbitrario pero alto. 3. Escriba un número entre 1 y 20. a continuación. lo que en ocasiones podría resultar lento. No se envía la página. Si la validación pasa todos los controles. 2. no es posible enviar la página hasta que se pasen todas las comprobaciones de validación en el cliente. para la comprobación de errores de validación se necesitaría una acción de ida y vuelta al servidor. Compruebe la validación en el cuadro de texto textEmail. Entero AllValidators Text Type ValidationGroup 12. repita la prueba con una dirección de correo electrónico válida. escriba una dirección de correo electrónico no válida y. Formas alternativas de mostrar información de errores De forma predeterminada.NET le proporcionan estas opciones adicionales: . Se muestran varios errores de validación porque no ha rellenado algunos campos necesarios. como la suya.MaximumValue MinimumValue 20 En este caso. Si la validación no funciona según lo previsto. cierre el explorador. haga clic en el botón Submit Request. los controles validadores insertan ECMAScript de cliente (JavaScript) en la página para realizar una comprobación de validación en el explorador. haga clic en el botón Enviar solicitud. Los controles validadores de ASP. Para probar la validación básica 1. (Como medida de seguridad. 5. 6. 1 En esta aplicación. para ello. Observe que se muestran los errores de validación inmediatamente. para una reserva se requiere por lo menos una persona. De forma predeterminada. asegúrese de que ha establecido todos los valores de configuración de propiedades enumerados anteriormente y después ejecute de nuevo la página. 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. es decir. Esto proporciona a los usuarios información instantánea sobre errores de validación. Cuando haya escrito los valores válidos. muestran el valor de la propiedad Text del control en la ubicación que tiene el control en la página. Cuando la página aparece en el explorador. 4.

Puede agregar estas dos opciones de presentación con el control ValidationSummary.Resumir todos los errores de validación en un lugar. arrastre un control CustomValidator a la página y colóquelo junto al cuadro de texto textPreferredDate. • Para que se muestre información de validación de formas alternativas 1. Para cada error verá información en dos lugares. Establezca las siguientes propiedades del control CustomValidator: Propiedad ControlToValidate Display Ajuste textPreferredDate Dinámico . Realice las mismas pruebas que realizó anteriormente en la práctica. Establezca la propiedad ValidationGroup del control ValidationSummary como AllValidators. Ejecute la página. Esta opción solo funciona en exploradores habilitados para el uso de script. Arrastre un control ValidationSummary desde el grupo Validación del Cuadro de herramientas hasta la página. 2. también es posible mostrar mensajes de error más largos. 9.NET no se incluye ninguno que compruebe automáticamente la validez de la fecha. 4. puede utilizar el control CustomValidator con ese fin. 7. Si se muestran los resúmenes de error. 3. Cierre el explorador. El primero es el código de validación personalizado que se ejecuta cuando se envía la página. Para utilizar un control CustomValidator con el fin de comprobar una fecha válida 1. El validador personalizado permite escribir código de validación propio para comprobar cualquier condición que necesite la aplicación. o como alternativa a esa presentación. cada error produce un mensaje emergente en el explorador. Siempre debe tener lógica de validación de servidor para un control CustomValidator. Cierre el explorador. 8. En esta práctica utilizará el control CustomValidator para comprobar que el valor que escribe el usuario en el cuadro de texto textPreferredDate se puede convertir en un valor de fecha. En esta ocasión. 2. Desde el grupo Validación del Cuadro de herramientas. Sin embargo. Agregar validación personalizada para comprobar la entrada de la fecha Entre los controles de validación de ASP. Realice las mismas pruebas. Puede hacerlo además de que se muestren los errores en contexto. Establezca la propiedad ValidationSummary del control ShowMessageBox en true. El mensaje de error más largo (el valor de la propiedad ErrorMessage del control) se muestra en el control ValidationSummary. En esta parte. Ejecute la página. 5. Agregará dos bloques de código de validación personalizado. • Mostrar un mensaje emergente en el explorador con información de error. agregará ambas características de presentación a la página. Se muestra un mensaje de error corto (el valor de la propiedad Text del control validador) donde se encuentra el control validador. 6. También escribirá script de cliente (ECMAScript o JavaScript) que realizará una comprobación similar en el explorador para que el usuario tenga información inmediata.

AllValidators 3. a continuación.ErrorMessage Text ValidationGroup Escriba una fecha en el formato m/d/aaaa.IsValid) { labelMessage. Ahora ha agregado el código de servidor para el control CustomValidator para comprobar la validez de una fecha. En este ejemplo.. Si necesita usar la referencia cultural actual. } } Este código se ejecuta cuando el usuario envía la página.Text = "Page is not valid. agregue el código resaltado que se muestra a continuación: protected void CustomValidator1_ServerValidate(object source. Esta propiedad se utiliza para asegurarse de que todas las comprobaciones de validación han pasado el procesamiento de servidor. Si la establece en false.::. La propiedad IsValid devuelve el estado acumulado de todos los controles validadores en la página.Value. "d". EventArgs e) { if(Page. } catch { args. Como ya se ha visto anteriormente. } else { labelMessage.". System.Globalization.::. Haga doble clic en el control CustomValidator con objeto de crear un controlador para su evento ServerValidate y. Formato de fecha no válido (se requiere m/d/aaaa).DateTimeFormatInfo. El código interactúa con el control validador mediante el objeto ServerValidateEventArgs (args) pasado al controlador.IsValid = true. ServerValidateEventArgs args) { try { DateTime.IsValid en cualquier procesamiento de servidor para asegurarse de que se han pasado todas las comprobaciones de validación.". debe comprobarse la propiedad Page. el validador mostrará su mensaje de error. Si el usuario especifica un valor no válido (que no se ajusta a una fecha de formato m/d/aaaa).ParseExact(args.Text = "Your reservation has been processed. agregue el código resaltado que se muestra a continuación: protected void buttonSubmit_Click(object sender. 4. En el controlador Button_Click..IsValid = false. el método ParseExact del objeto DateTime produce una excepción y se ejecuta el bloque Catch. Nota: El valor del parámetro provider del método DateTime.InvariantInfo). } } Cuando se utiliza un control CustomValidator. establezca el parámetro provider en null.ParseExact es independiente de la referencia cultural. el código utiliza un bloque try-catch para determinar si la entrada del usuario se puede convertir en un objeto DateTime. args. establezca la propiedad IsValid del objeto args en true o false. Después de haber comprobado que la entrada del usuario es válida. El valor que el usuario ha especificado en el cuadro de texto textPreferredDate se pasa como la propiedad Value del objeto args. los controles validadores también comprueban la entrada de un usuario mediante .

NET Framework. Sin embargo. el código comprueba que se han escrito fechas con un formato numérico válido. ECMAScript analiza el texto escrito en lugar del código ParseExact que se utiliza en el servidor para comprobar la fecha. arrValues = args. Sin embargo.split("/"). var arrValues. args) { var iDay. ECMAScript no proporciona exactamente la misma funcionalidad que en . } return true. Abra o cambie a Default. }</script> Nota: ECMAScript (JavaScript) distingue entre mayúsculas y minúsculas.getFullYear() != iYear)) { args. iMonth = arrValues[0]. En este ejemplo. Por consiguiente.script de cliente. en este caso puede crear código de cliente que realice esencialmente la misma comprobación que está realizando su código de servidor.getMonth() != iMonth . iYear = arrValues[2]. Observe que el código para la validación personalizada es ligeramente diferente en el script de cliente que en el código de servidor. Para agregar script de cliente al control CustomValidator 1. . También puede agregar script de cliente al control CustomValidator.Value. pero no tan estricto. return. iMonth.getDate() != iDay) || (testDate. si el código personalizado valida una entrada del usuario mediante consulta en una base de datos de servidor). 3. iMonth . Coloque el punto de inserción en el elemento <asp:customvalidator> para seleccionarlo. En realidad. agregue el siguiente bloque de script de cliente: Copiar código <script language="javascript"> function validateDate(oSrc. Este código es similar al de comprobación de validación de servidor. En el elemento <head> de la página.1) || (testDate. las dos comprobaciones de validación (cliente y servidor) son bastante parecidas para proporcionarle la funcionalidad que necesita. iDay).1.aspx. escriba exactamente el código como se ve aquí. La entrada del usuario se pasa a la función como la propiedad Value del objeto args. escribirá script de cliente que duplica la lógica que aplica la validación de servidor.IsValid = false. y se puede establecer la propiedad IsValid del objeto para indicar si el valor pasa la validación. var testDate = new Date(iYear. 2. No siempre es viable escribir código de validación personalizado de cliente (por ejemplo. if ((testDate. iYear. iDay = arrValues[1].

Ejecute de nuevo la página y escriba valores válidos para la dirección de correo electrónico y el número de personas de la fiesta. Dado que no se ha podido realizar la validación en el cliente para el cuadro de texto de fecha. Como en el caso anterior. En cuanto el cuadro de texto de fecha pierde el foco. para ello. 2. (No haga clic en el botón). Haga clic en el botón Submit Request. Especifique un valor de fecha válido (como 17/11/2005) y haga clic en el botón. se llenará el cuadro de texto con un valor. La página realiza una acción de ida y vuelta al servidor Web y la validación de servidor produce un error. el script de validación de cliente se ejecuta y aparece un mensaje de error. Por consiguiente. deben escribir su número de teléfono. 9. sólo tiene que . la página contendrá dos controles adicionales: una casilla y un cuadro de texto. El número de teléfono es opcional. Ahora puede enviar el formulario. establezca nuevamente la propiedad EnableClientScript del control CustomValidator en true. a continuación. 6. Se produce un error en la prueba de IsValid y labelMessage indica que la página no es válida. 4. pero no se ejecutará el validador del cliente. Probar la validación personalizada Ahora puede probar que su validación personalizada está funcionando correctamente. Cierre el explorador. cuando la página se envía al servidor. El mensaje de error desaparece. y un control RegularExpressionValidator para comprobar el formato. Escriba un valor de fecha no válido en el cuadro de texto de la fecha y. En el cuadro de texto de la fecha. 5. Los usuarios pueden activar una casilla para indicar que desean confirmación telefónica de sus reservas. Especifique una dirección de correo electrónico y el número de personas de la fiesta para que la validación de esos campos sea correcta. establezca la propiedad ClientValidationFunction del control como validateDate. para ello. al seleccionar un valor de la lista Autocompletar. agregará información opcional al formulario de reservas. Agregar controles opcionales con validación condicional En la parte final de la práctica. establezca la propiedad EnableClientScript del control CustomValidator en false. Presione CTRL+F5 para ejecutar la página. Nota: Si utiliza la función Autocompletar de Internet Explorer. haga clic en el botón Submit Request. Ahora ha agregado una comprobación de validación personalizada que funciona primero en el script de cliente para comprobar la entrada del usuario inmediatamente y. a continuación. utilizará la validación para comprobar las entradas del usuario. En esta ocasión. después. el valor de la fecha pasa la validación. Si lo hacen.4. 7. que es el nombre de la función ECMAScript que ha creado. En la ventana Propiedades. Para probar la validación personalizada 1. por lo que ve el mensaje de confirmación creado en el controlador Click del botón. Vuelva a habilitar la validación en el cliente. Corrija el valor de la fecha y presione de nuevo la tecla TAB. 3. presione la tecla TAB. no se envía la página. Deshabilite temporalmente la validación en el cliente. 8. Utilizará un control RequiredFieldValidator para asegurarse de que los usuarios escriben un número de teléfono. 10. escriba una cadena que obviamente no sea una fecha y.

Desde el grupo Validación del Cuadro de herramientas. Para agregar una validación condicional 1. bajo el control CheckBox y establezca las propiedades siguientes: a. escribirá código sencillo con el que se active o desactive la validación del número de teléfono en función del estado de la casilla. pero en este caso hará referencia al control validador en código. Arrastre un control TextBox a la página. CausesValidation Text 2. significa que el validador no pertenece al grupo AllValidators que estableció para los otros controles validadores en la página.comprobar el número de teléfono si el usuario ha activado la casilla Confirm reservation by phone. textPhoneNumber Dinámico Debe proporcionar un número de teléfono. 4. nemotécnico. ID Enabled Propiedad b. 3. Valores de configuración textPhoneNumber False No se habilitará el cuadro de texto hasta que 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. 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. arrastre un control RequiredFieldValidator a la página y establezca las propiedades siguientes: Propiedad ID Ajuste validatorRequiredPhoneNumber No estableció el id. de los controles validadores anteriormente en el tutorial. Confirme la reserva por teléfono. Desde el grupo Estándar del Cuadro de herramientas. Por lo tanto. * (Dejarlo en blanco) Si esta propiedad está en blanco. Como consecuencia ControlToValidate Display ErrorMessage Text ValidationGroup . arrastre un control CheckBox a la página y establezca las propiedades siguientes: Propiedad ID AutoPostBack Ajuste checkPhoneConfirmation True Cuando el usuario haga clic en la casilla. por lo que le resultará útil proporcionarle un id. False No se producirá automáticamente la validación al hacer clic en CheckBox.

5. EventArgs e) { if(checkPhoneConfirmation. los validadores se quitan del grupo y. los dos controles validadores asociados al cuadro de texto se agregan al grupo de validación al que pertenecen los otros controles validadores.ValidationGroup = "". Para probar la validación condicional 1. Haga doble clic en el control checkPhoneConfirmation con objeto de crear un controlador para su evento CheckedChanged y. Probar la validación condicional Ahora puede probar si esa validación condicional funciona correctamente.ValidationGroup = "". 4. } else { textPhoneNumber. Escriba información válida para la dirección de correo electrónico.ValidationGroup = "AllValidators".Enabled = false. no se procesan cuando se hace clic en el botón Enviar solicitud.ValidationGroup = "AllValidators". agregue el código resaltado que se muestra a continuación: protected void checkPhoneConfirmation_CheckedChanged( object sender. Se envía la página y aparece el mensaje de confirmación. validatorRegExPhoneNumber. (Dejarlo en blanco) ValidationGroup 6. el número de personas de la fiesta y la fecha. Arrastre un control RegularExpressionValidator a la página y establezca las propiedades siguientes: Propiedad ID ControlToValidate Display ErrorMessage Text ValidationExpression Ajuste validatorRegExPhoneNumber textPhoneNumber Dinámico El formato del número de teléfono no es válido Formato no válido (Use el cuadro de diálogo Editor de expresiones regulares para seleccionar Número de teléfono en EE. 2. validatorRequiredPhoneNumber. se comprobarán cuando el usuario envíe la página. validatorRequiredPhoneNumber.de ello. . } } Cuando el usuario hace clic en la casilla. validatorRegExPhoneNumber.Checked) { textPhoneNumber.Enabled = true. El efecto es que todos los validadores de la página.UU. 5. u otra expresión para el número de teléfono). Active la casilla Confirmar la reserva por teléfono. Presione CTRL+F5 para ejecutar la página. Si el usuario desactiva la casilla. este validador no se comprueba de forma predeterminada cuando se hace clic en el control buttonSubmit. incluidos los del número de teléfono. por lo tanto. 3. Haga clic de nuevo en Enviar solicitud. a continuación. Haga clic en Enviar solicitud.

haga clic de nuevo en Submit Request para confirmar que el cuadro de texto no aceptará un número de teléfono no válido. Nota: Si ha seleccionado Número de teléfono de EE. a continuación. un conjunto de 4 caracteres numéricos. un número de teléfono con el formato correcto consta del código de área (campo opcional con 3 caracteres numéricos entre paréntesis o seguidos de un guión).En esta ocasión. seguido de un conjunto de 3 caracteres numéricos. Escriba un número de teléfono con un formato correcto y haga clic en el botón de envío para confirmar que el control validador acepta datos con un formato correcto. un guión y. verá un mensaje de error (una estrella junto al cuadro de texto correspondiente al teléfono). finalmente. 7.   . Ejemplos válidos son (425) 555-0123. habilitó la validación para el cuadro de texto. 6. Escriba un número de teléfono no válido y.en el Editor de expresiones regulares para la propiedad ValidationExpression del control RegularExpressionValidator. Al hacer clic en la casilla.UU. 425-555-0123 ó 555-0123.