Прочитать на английском

Поделиться через


ClientScriptManager.ValidateEvent Метод

Определение

Проверяет клиентское событие.

Перегрузки

ValidateEvent(String)

Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String).

ValidateEvent(String, String)

Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String, String).

ValidateEvent(String)

Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String).

public void ValidateEvent (string uniqueId);

Параметры

uniqueId
String

Уникальный ИД, представляющий клиентский элемент управления, генерирующий событие.

См. также раздел

Применяется к

ValidateEvent(String, String)

Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String, String).

public void ValidateEvent (string uniqueId, string argument);

Параметры

uniqueId
String

Уникальный ИД, представляющий клиентский элемент управления, генерирующий событие.

argument
String

Аргументы события, переданные вместе с клиентским событием.

Исключения

Параметр uniqueId имеет значение null или равен пустой строке ("").

Примеры

В следующем примере кода демонстрируется использование RegisterForEventValidation метода и ValidateEvent метода для регистрации обратного вызова для проверки и проверки того, был ли обратный вызов создан на странице. Чтобы улучшить показанную здесь проверку, можно изменить параметр проверки argument таким образом, чтобы он содержал сведения, относящиеся к пользователю, например удостоверению или роли.

<%@ Page Language="C#" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>

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

<script runat="server" >
        
    string _cbMessage = "";
    // Define method that processes the callbacks on server.
    public void RaiseCallbackEvent(String eventArgument)
    {
        try
        {
            Page.ClientScript.ValidateEvent(button1.UniqueID, this.ToString());
            _cbMessage = "Correct event raised callback.";
        }
        catch (Exception ex)
        {
            _cbMessage = "Incorrect event raised callback.";
        }
    }

    // Define method that returns callback result.
    public string GetCallbackResult()
    {
        return _cbMessage;
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            ClientScriptManager cs = Page.ClientScript;
            String cbReference = cs.GetCallbackEventReference("'" +
                Page.UniqueID + "'", "arg", "ReceiveServerData", "",
                "ProcessCallBackError", false);
            String callbackScript = "function CallTheServer(arg, context) {" +
                cbReference + "; }";
            cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer",
                callbackScript, true);
        }
    }
    protected override void Render(HtmlTextWriter writer)
    {
        Page.ClientScript.RegisterForEventValidation(button1.UniqueID, this.ToString());
        base.Render(writer);
    }
    
</script>

<script type="text/javascript">
var value1 = new Date();
function ReceiveServerData(arg, context)
{
    Message.innerText = arg;
    Label1.innerText = "Callback completed at " + value1;
    value1 = new Date();
}
function ProcessCallBackError(arg, context)
{
    Message.innerText = 'An error has occurred.';
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>CallBack Event Validation Example</title>
</head>
<body>
    <form id="Form1" runat="server">
    <div>
      Callback result: <span id="Message"></span>
      <br /> <br />
      <input type="button"
             id="button1" 
             runat="server"
             value="ClientCallBack" 
             onclick="CallTheServer(value1, null )"/>
      <br /> <br />
      <asp:Label id="Label1" runat="server"/>
    </div>
    </form>
</body>
</html>

См. также раздел

Применяется к