Personas que lo han encontrado útil: 1 de 1 - Valorar este tema

Button.CausesValidation (Propiedad)

Obtiene o establece un valor que indica si la validación se realiza al hacer clic en el control Button.

Espacio de nombres: System.Web.UI.WebControls
Ensamblado: System.Web (en system.web.dll)

[ThemeableAttribute(false)] 
public virtual bool CausesValidation { get; set; }
/** @property */
public boolean get_CausesValidation ()

/** @property */
public void set_CausesValidation (boolean value)

public function get CausesValidation () : boolean

public function set CausesValidation (value : boolean)

No aplicable.

Valor de propiedad

Es true si se realiza la validación cuando se hace clic en el control Button; en caso contrario, es false. El valor predeterminado es true.

De manera predeterminada, se realiza la validación de la página cuando se hace clic en un control Button. La validación de la página determina si todos los controles de entrada asociados a un control de validación en la página cumplen las reglas de validación especificadas por el control de validación.

Se puede especificar o determinar si la validación se realiza en el cliente y en el servidor cuando se hace clic en un control Button mediante la propiedad CausesValidation. Para evitar que se realice la validación, establezca la propiedad CausesValidation en false.

NotaNota:

Debe establecer la propiedad CausesValidation en false cuando utilice la propiedad PostBackUrl para devolver datos a otra página. La validación se debe comprobar explícitamente al devolver datos a una página distinta. Para obtener un ejemplo, vea la sección Comentarios de la propiedad PostBackUrl.

Esta propiedad se establece normalmente en false para un botón restablecer o borrar con el fin de evitar que se realice la validación al hacer clic en el botón.

Si el valor de la propiedad CausesValidation está establecido en true, también puede utilizar la propiedad ValidationGroup para especificar el nombre del grupo de validación para que el control Button produzca la validación.

Esta propiedad no se puede establecer por temas o por temas de hoja de estilos. Para obtener más información, vea ThemeableAttribute y Información general sobre temas y máscaras de ASP.NET.

En el siguiente ejemplo se muestra cómo utilizar la propiedad CausesValidation para impedir que se produzca la validación de la página. Tenga en cuenta que el método Validate activa cada control de validación de forma independiente.

Nota de seguridadNota: de seguridad

Este ejemplo tiene un cuadro de texto que acepta datos del usuario, lo que puede suponer una amenaza para la seguridad. De forma predeterminada, las páginas Web ASP.NET validan que los datos proporcionados por el usuario no incluyen elementos HTML ni de secuencia de comandos. Para obtener más información, vea Información general sobre los ataques mediante secuencias de comandos.


<%@ Page Language="C#" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" > 

<head runat="server">
    <title> Button CausesValidation Example </title>
<script runat="server">

      void SubmitButton_Click(Object sender, EventArgs e)
      {
         
         // Determine which button was clicked.
         switch(((Button)sender).ID)
         {

            case "CityQueryButton":

               // Validate only the controls used for the city query.
               CityReqValidator.Validate();

               // Take the appropriate action if the controls pass validation. 
               if (CityReqValidator.IsValid)
               {
                  Message.Text = "You have chosen to run a query for the following city: " + 
                     CityTextBox.Text;
               }

               break;

            case "StateQueryButton":

               // Validate only the controls used for the state query.
               StateReqValidator.Validate();

               // Take the appropriate action if the controls pass validation.
               if (StateReqValidator.IsValid)
               {
                  Message.Text = "You have chosen to run a query for the following state: " + 
                     StateTextBox.Text;
               }

               break;

            default:

               // If the button clicked isn't recognized, erase the message on the page.
               Message.Text = "";

               break;

         }
        
      }

   </script>

</head>

<body>

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

      <h3> Button CausesValidation Example </h3>

      <table border="1" cellpadding="10">
         <tr>
            <td>
               <b>Enter city to query.</b> <br />
               <asp:TextBox ID="CityTextBox" 
                    runat="server"/>
               <asp:RequiredFieldValidator ID="CityReqValidator"
                    ControlToValidate="CityTextBox"
                    ErrorMessage="<br />Please enter a city."
                    Display="Dynamic"
                    EnableClientScript="False"
                    runat="server"/>
            </td>
            <td valign="bottom">
               <asp:Button ID="CityQueryButton"
                    Text="Submit"
                    CausesValidation="False"
                    OnClick="SubmitButton_Click"
                    runat="server"/>
            </td>
         </tr>

         <tr>
            <td>
               <b>Enter state to query.</b> <br />
               <asp:TextBox ID="StateTextBox"  
                    runat="server"/>
               <asp:RequiredFieldValidator ID="StateReqValidator"
                    ControlToValidate="StateTextBox"
                    ErrorMessage="<br />Please enter a state."
                    Display="Dynamic"
                    EnableClientScript="False"
                    runat="server"/>
            </td>
            <td valign="bottom">
               <asp:Button ID="StateQueryButton"
                    Text="Submit"
                    CausesValidation="False"
                    OnClick="SubmitButton_Click"
                    runat="server"/>
            </td>
         </tr>

      </table>

      <br /><br />

      <asp:Label ID="Message"
           runat="Server"/>

   </form>

</body>
</html>

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0, 1.1, 1.0
¿Le ha resultado útil?
(Caracteres restantes: 1500)