ClientScriptManager.ValidateEvent Метод
Определение
Проверяет клиентское событие.Validates a client event.
Перегрузки
ValidateEvent(String) |
Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String).Validates a client event that was registered for event validation using the RegisterForEventValidation(String) method. |
ValidateEvent(String, String) |
Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String, String).Validates a client event that was registered for event validation using the RegisterForEventValidation(String, String) method. |
ValidateEvent(String)
Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String).Validates a client event that was registered for event validation using the RegisterForEventValidation(String) method.
public:
void ValidateEvent(System::String ^ uniqueId);
public void ValidateEvent (string uniqueId);
member this.ValidateEvent : string -> unit
Public Sub ValidateEvent (uniqueId As String)
Параметры
- uniqueId
- String
Уникальный ИД, представляющий клиентский элемент управления, генерирующий событие.A unique ID representing the client control generating the event.
Дополнительно
ValidateEvent(String, String)
Проверяет клиентское событие, зарегистрированное для проверки, используя метод RegisterForEventValidation(String, String).Validates a client event that was registered for event validation using the RegisterForEventValidation(String, String) method.
public:
void ValidateEvent(System::String ^ uniqueId, System::String ^ argument);
public void ValidateEvent (string uniqueId, string argument);
member this.ValidateEvent : string * string -> unit
Public Sub ValidateEvent (uniqueId As String, argument As String)
Параметры
- uniqueId
- String
Уникальный ИД, представляющий клиентский элемент управления, генерирующий событие.A unique ID representing the client control generating the event.
- argument
- String
Аргументы события, переданные вместе с клиентским событием.The event arguments passed with the client event.
Исключения
Параметр uniqueId
имеет значение null
или равен пустой строке ("").uniqueId
is null
or an empty string ("").
Примеры
В следующем примере кода показано использование RegisterForEventValidation метода ValidateEvent и метода для регистрации обратного вызова для проверки и проверки того, что обратный вызов создан на странице.The following code example demonstrates using the RegisterForEventValidation method and the ValidateEvent method to register a callback for validation and to validate that the callback originated from the page. Чтобы улучшить показанную здесь проверку, можно изменить параметр проверки argument
, чтобы он содержал сведения, относящиеся к пользователю, например удостоверение или роль.To improve on the validation shown here, you could modify the validation argument
parameter to contain information specific to the user such as an identity or role
<%@ 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>
<%@ Page Language="VB" %>
<%@ 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">
Dim _cbMessage As String = ""
' Define method that processes the callbacks on server.
Public Sub RaiseCallbackEvent(ByVal eventArgument As String) _
Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent
Try
Page.ClientScript.ValidateEvent(button1.UniqueID, Me.ToString())
_cbMessage = "Correct event raised callback."
Catch ex As Exception
_cbMessage = "Incorrect event raised callback."
End Try
End Sub
' Define method that returns callback result.
Public Function GetCallbackResult() _
As String Implements _
System.Web.UI.ICallbackEventHandler.GetCallbackResult
Return _cbMessage
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
If (Not IsPostBack) Then
Dim cs As ClientScriptManager = Page.ClientScript
Dim cbReference As String = cs.GetCallbackEventReference("'" & _
Page.UniqueID & "'", "arg", "ReceiveServerData", "", _
"ProcessCallBackError", False)
Dim callbackScript As String = "function CallTheServer(arg, context) {" & _
cbReference & "; }"
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer", _
callbackScript, True)
End If
End Sub
Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
Page.ClientScript.RegisterForEventValidation(button1.UniqueID, Me.ToString())
MyBase.Render(writer)
End Sub
</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>