Buscar..


Sintaxis

  • RequiredFieldValidator Control: <asp: RequiredFieldValidator ID = "rfvcandidate" runat = "server" ControlToValidate = "ddlcandidate" ErrorMessage = "Por favor, elija un candidato" InitialValue = "Por favor, elija un candidato">
    </ asp: RequiredFieldValidator>

  • Control RangeValidator:

    <asp: RangeValidator ID = "rvclass" runat = "server" ControlToValidate = "txtclass" ErrorMessage = "Ingrese su clase (6 - 12)" MaximumValue = "12" MinimumValue = "6" Type = "Integer">
    </ asp: RangeValidator>

  • Control CompareValidator: <asp: CompareValidator ID = "CompareValidator1" runat = "server" ErrorMessage = "CompareValidator"> </ asp: CompareValidator>

  • CustomValidator:

    <asp: CustomValidator ID = "CustomValidator1" runat = "server" ClientValidationFunction = .cvf_func. ErrorMessage = "CustomValidator">

    </ asp: CustomValidator>

  • Resumen de validación: <asp: ValidationSummary ID = "ValidationSummary1" runat = "server" DisplayMode = "BulletList" ShowSummary = "true" HeaderText = "Errores:" />

Controles de validación

Los controles de validación de ASP.NET validan los datos de entrada del usuario para garantizar que los datos inútiles, no autenticados o contradictorios no se almacenen.

ASP.NET proporciona los siguientes controles de validación:

  • RequiredFieldValidator
  • RangeValidator
  • CompareValidator
  • RegularExpressionValidator
  • CustomValidator
  • Validación resumen

RequiredFieldValidator Control

El control RequiredFieldValidator asegura que el campo requerido no esté vacío. Por lo general, está vinculado a un cuadro de texto para forzar la entrada en el cuadro de texto.

La sintaxis del control es la dada:

<asp:RequiredFieldValidator ID="rfvcandidate" 
   runat="server" ControlToValidate ="ddlcandidate"
   ErrorMessage="Please choose a candidate" 
   InitialValue="Please choose a candidate">
   
</asp:RequiredFieldValidator>

Control RangeValidator

El control RangeValidator verifica que el valor de entrada se encuentre dentro de un rango predeterminado.

Tiene tres propiedades específicas:

Propiedades Descripción
Tipo Define el tipo de los datos. Los valores disponibles son: Moneda, Fecha,
Valor mínimo Especifica el valor mínimo del rango.
Valor máximo Especifica el valor máximo del rango.

La sintaxis del control es la dada:

<asp:RangeValidator ID="rvclass" runat="server" ControlToValidate="txtclass" 
   ErrorMessage="Enter your class (6 - 12)" MaximumValue="12" 
   MinimumValue="6" Type="Integer">
   
</asp:RangeValidator>

CompareValidator Control

El control CompareValidator compara un valor en un control con un valor fijo o un valor en otro control.

Tiene las siguientes propiedades específicas:

Propiedades Descripción
Tipo Especifica el tipo de datos.
ControlToCompare Especifica el valor del control de entrada para comparar con.
ValueToCompare Especifica el valor constante a comparar con.
ValueToCompare Especifica el operador de comparación, los valores disponibles son: Equal, NotEqual, GreaterThan, GreaterThanEqual, LessThan, LessThanEqual y DataTypeCheck.

La sintaxis básica del control es la siguiente:

<asp:CompareValidator ID="CompareValidator1" runat="server" 
   ErrorMessage="CompareValidator">
   
</asp:CompareValidator>

RegularExpressionValidator

El RegularExpressionValidator permite validar el texto de entrada mediante la comparación con un patrón de una expresión regular. La expresión regular se establece en la propiedad ValidationExpression.

La siguiente tabla resume las construcciones de sintaxis comúnmente utilizadas para expresiones regulares:

Escapes de personajes Descripción
\segundo Coincide con un retroceso.
\ t Coincide con una pestaña.
\ r Coincide con un retorno de carro.
\ v Coincide con una pestaña vertical.
\F Coincide con un feed de formulario.
\norte Coincide con una nueva línea.
\ Personaje de escape.

Aparte de la coincidencia de un solo carácter, se podría especificar una clase de caracteres que se pueden combinar, llamados metacaracteres.

Metacaracteres Descripción
. Coincide con cualquier carácter excepto \ n.
[a B C D] Coincide con cualquier personaje en el conjunto.
[^ abcd] Excluye cualquier personaje del conjunto.
[2-7a-mA-M] Coincide con cualquier carácter especificado en el rango.
\ w Coincide con cualquier carácter alfanumérico y guión bajo.
\ W Coincide con cualquier carácter que no sea palabra.
\ s Coincide con caracteres de espacio en blanco como, espacio, tabulador, nueva línea, etc.
\ S Coincide con cualquier carácter que no sea un espacio en blanco.
\re Coincide con cualquier carácter decimal.
\RE Coincide con cualquier carácter no decimal.

Se podrían agregar cuantificadores para especificar el número de veces que podría aparecer un carácter.

Cuantificador Descripción
* Cero o más partidos.
+ Uno o más partidos.
? Cero o uno partidos.
{NORTE} N partidos.
{NORTE,} N o más partidos.
{NUEVO MÉJICO} Entre N y M partidos.

La sintaxis del control es la dada:

<asp:RegularExpressionValidator ID="string" runat="server" ErrorMessage="string"
   ValidationExpression="string" ValidationGroup="string">
   
</asp:RegularExpressionValidator>

Resumen de validación

El control ValidationSummary no realiza ninguna validación pero muestra un resumen de todos los errores en la página. El resumen muestra los valores de la propiedad ErrorMessage de todos los controles de validación que fallaron la validación.

Las siguientes dos propiedades mutuamente inclusivas muestran el mensaje de error:

ShowSummary: muestra los mensajes de error en el formato especificado.

ShowMessageBox: muestra los mensajes de error en una ventana separada.

La sintaxis para el control es la dada:

<asp:ValidationSummary ID="ValidationSummary1" runat="server" 
   DisplayMode = "BulletList" ShowSummary = "true" HeaderText="Errors:" />

Grupos de validación

Las páginas complejas tienen diferentes grupos de información provistos en diferentes paneles. En tal situación, podría surgir la necesidad de realizar la validación por separado para un grupo separado. Este tipo de situación se maneja utilizando grupos de validación.

Para crear un grupo de validación, debe colocar los controles de entrada y los controles de validación en el mismo grupo lógico estableciendo su propiedad ValidationGroup.

Ejemplo El siguiente ejemplo describe un formulario que deben llenar todos los estudiantes de una escuela, dividido en cuatro casas, para elegir al presidente de la escuela. Aquí, usamos los controles de validación para validar la entrada del usuario.

Este es el formulario en vista de diseño:

introduzca la descripción de la imagen aquí

El código del archivo de contenido es el dado:

<form id="form1" runat="server">

   <table style="width: 66%;">
   
      <tr>
         <td class="style1" colspan="3" align="center">
         <asp:Label ID="lblmsg" 
            Text="President Election Form : Choose your president" 
            runat="server" />
         </td>
      </tr>

      <tr>
         <td class="style3">
            Candidate:
         </td>

         <td class="style2">
            <asp:DropDownList ID="ddlcandidate" runat="server"  style="width:239px">
               <asp:ListItem>Please Choose a Candidate</asp:ListItem>
               <asp:ListItem>M H Kabir</asp:ListItem>
               <asp:ListItem>Steve Taylor</asp:ListItem>
               <asp:ListItem>John Abraham</asp:ListItem>
               <asp:ListItem>Venus Williams</asp:ListItem>
            </asp:DropDownList>
         </td>

         <td>
            <asp:RequiredFieldValidator ID="rfvcandidate" 
               runat="server" ControlToValidate ="ddlcandidate"
               ErrorMessage="Please choose a candidate" 
               InitialValue="Please choose a candidate">
            </asp:RequiredFieldValidator>
         </td>
      </tr>

      <tr>
         <td class="style3">
            House:
         </td>

         <td class="style2">
            <asp:RadioButtonList ID="rblhouse" runat="server" RepeatLayout="Flow">
               <asp:ListItem>Red</asp:ListItem>
               <asp:ListItem>Blue</asp:ListItem>
               <asp:ListItem>Yellow</asp:ListItem>
               <asp:ListItem>Green</asp:ListItem>
            </asp:RadioButtonList>
         </td>

         <td>
            <asp:RequiredFieldValidator ID="rfvhouse" runat="server" 
               ControlToValidate="rblhouse" ErrorMessage="Enter your house name" >
            </asp:RequiredFieldValidator>
            <br />
         </td>
      </tr>

      <tr>
         <td class="style3">
            Class:
         </td>

         <td class="style2">
            <asp:TextBox ID="txtclass" runat="server"></asp:TextBox>
         </td>

         <td>
            <asp:RangeValidator ID="rvclass" 
               runat="server" ControlToValidate="txtclass" 
               ErrorMessage="Enter your class (6 - 12)" MaximumValue="12" 
               MinimumValue="6" Type="Integer">
            </asp:RangeValidator>
         </td>
      </tr>

      <tr>
         <td class="style3">
            Email:
         </td>

         <td class="style2">
            <asp:TextBox ID="txtemail" runat="server" style="width:250px">
            </asp:TextBox>
         </td>

         <td>
            <asp:RegularExpressionValidator ID="remail" runat="server" 
               ControlToValidate="txtemail" ErrorMessage="Enter your email" 
               ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">
            </asp:RegularExpressionValidator>
         </td>
      </tr>

      <tr>
         <td class="style3" align="center" colspan="3">
            <asp:Button ID="btnsubmit" runat="server" onclick="btnsubmit_Click" 
               style="text-align: center" Text="Submit" style="width:140px" />
         </td>
      </tr>
   </table>
   <asp:ValidationSummary ID="ValidationSummary1" runat="server" 
      DisplayMode ="BulletList" ShowSummary ="true" HeaderText="Errors:" />
</form>

El código detrás del botón de enviar:

protected void btnsubmit_Click(object sender, EventArgs e)
{
   if (Page.IsValid)
   {
      lblmsg.Text = "Thank You";
   }
   else
   {
      lblmsg.Text = "Fill up all the fields";
   }
}


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow