ClientScriptManager.GetCallbackEventReference Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für ein Serverereignis initiiert.
Überlädt
GetCallbackEventReference(Control, String, String, String) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für ein Serverereignis initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Steuerelement, ein Argument, ein Clientskript sowie einen Kontext ein. |
GetCallbackEventReference(Control, String, String, String, Boolean) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Steuerelement, ein Argument, ein Clientskript, einen Kontext sowie einen booleschen Wert ein. |
GetCallbackEventReference(String, String, String, String, String, Boolean) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Ziel, ein Argument, ein Clientskript, einen Kontext, einen Fehlerhandler sowie einen booleschen Wert ein. |
GetCallbackEventReference(Control, String, String, String, String, Boolean) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Steuerelement, ein Argument, ein Clientskript, einen Kontext, einen Fehlerhandler sowie einen booleschen Wert ein. |
GetCallbackEventReference(Control, String, String, String)
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für ein Serverereignis initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Steuerelement, ein Argument, ein Clientskript sowie einen Kontext ein.
public:
System::String ^ GetCallbackEventReference(System::Web::UI::Control ^ control, System::String ^ argument, System::String ^ clientCallback, System::String ^ context);
public string GetCallbackEventReference (System.Web.UI.Control control, string argument, string clientCallback, string context);
member this.GetCallbackEventReference : System.Web.UI.Control * string * string * string -> string
Public Function GetCallbackEventReference (control As Control, argument As String, clientCallback As String, context As String) As String
Parameter
- control
- Control
Das Server-Control, das den Clientrückruf behandelt. Das Steuerelement muss die ICallbackEventHandler-Schnittstelle implementieren und eine RaiseCallbackEvent(String)-Methode bereitstellen.
- argument
- String
Ein Argument, das vom Clientskript an den Server übergeben wird.
RaiseCallbackEvent(String) -Methode.
- clientCallback
- String
Der Name des Clientereignishandlers, der das Ergebnis des erfolgreich ausgeführten Serverereignisses empfängt.
- context
- String
Clientskript, das auf dem Client vor der Initialisierung des Rückrufs ausgewertet wird. Das Ergebnis des Skripts wird an den Clientereignishandler zurückgegeben.
Gibt zurück
Der Name einer Clientfunktion, die den Clientrückruf ausführt.
Ausnahmen
Der angegebene Control ist null
.
Das angegebene Control implementiert die ICallbackEventHandler-Schnittstelle nicht.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie zwei Überladungen der GetCallbackEventReference -Methode in einem Clientrückrufszenario verwendet werden, in dem ganze Zahlen inkrementiert werden.
Es werden zwei Rückrufmechanismen gezeigt; der Unterschied zwischen ihnen ist die Verwendung des context
Parameters. Eine ReceiveServerData1
Clientrückruffunktion wird mithilfe des context
-Parameters bereitgestellt. Im Gegensatz dazu ist die ReceiveServerData2
Clientrückruffunktion in einem <script>
Block auf der Seite definiert. Eine RaiseCallbackEvent -Methode ist der Serverhandler, der den an sie übergebenen Wert inkrementiert, und die GetCallbackResult Methode gibt den inkrementierten Wert als Zeichenfolge zurück. Wenn die RaiseCallbackEvent Methode einen Fehler zurückgibt, wird die ProcessCallBackError
Clientfunktion aufgerufen.
<%@ 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">
public int cbCount = 0;
// Define method that processes the callbacks on server.
public void RaiseCallbackEvent(String eventArgument)
{
cbCount = Convert.ToInt32(eventArgument) + 1;
}
// Define method that returns callback result.
public string GetCallbackResult()
{
return cbCount.ToString();
}
protected void Page_Load(object sender, EventArgs e)
{
// Define a StringBuilder to hold messages to output.
StringBuilder sb = new StringBuilder();
// Check if this is a postback.
sb.Append("No page postbacks have occurred.");
if (Page.IsPostBack)
{
sb.Append("A page postback has occurred.");
}
// Write out any messages.
MyLabel.Text = sb.ToString();
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Define one of the callback script's context.
// The callback script will be defined in a script block on the page.
StringBuilder context1 = new StringBuilder();
context1.Append("function ReceiveServerData1(arg, context)");
context1.Append("{");
context1.Append("Message1.innerText = arg;");
context1.Append("value1 = arg;");
context1.Append("}");
// Define callback references.
String cbReference1 = cs.GetCallbackEventReference(this, "arg",
"ReceiveServerData1", context1.ToString());
String cbReference2 = cs.GetCallbackEventReference("'" +
Page.UniqueID + "'", "arg", "ReceiveServerData2", "",
"ProcessCallBackError", false);
String callbackScript1 = "function CallTheServer1(arg, context) {" +
cbReference1 + "; }";
String callbackScript2 = "function CallTheServer2(arg, context) {" +
cbReference2 + "; }";
// Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer1",
callbackScript1, true);
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer2",
callbackScript2, true);
}
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</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">
Public cbCount As Integer = 0
' Define method that processes the callbacks on server.
Public Sub RaiseCallbackEvent(ByVal eventArgument As String) _
Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent
cbCount = Convert.ToInt32(eventArgument) + 1
End Sub
' Define method that returns callback result.
Public Function GetCallbackResult() _
As String Implements _
System.Web.UI.ICallbackEventHandler.GetCallbackResult
Return cbCount.ToString()
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Define a StringBuilder to hold messages to output.
Dim sb As New StringBuilder()
' Check if this is a postback.
sb.Append("No page postbacks have occurred.")
If (Page.IsPostBack) Then
sb.Append("A page postback has occurred.")
End If
' Write out any messages.
MyLabel.Text = sb.ToString()
' Get a ClientScriptManager reference from the Page class.
Dim cs As ClientScriptManager = Page.ClientScript
' Define one of the callback script's context.
' The callback script will be defined in a script block on the page.
Dim context1 As New StringBuilder()
context1.Append("function ReceiveServerData1(arg, context)")
context1.Append("{")
context1.Append("Message1.innerText = arg;")
context1.Append("value1 = arg;")
context1.Append("}")
' Define callback references.
Dim cbReference1 As String = cs.GetCallbackEventReference(Me, "arg", _
"ReceiveServerData1", context1.ToString())
Dim cbReference2 As String = cs.GetCallbackEventReference("'" & _
Page.UniqueID & "'", "arg", "ReceiveServerData2", "", "ProcessCallBackError", False)
Dim callbackScript1 As String = "function CallTheServer1(arg, context) {" + _
cbReference1 + "; }"
Dim callbackScript2 As String = "function CallTheServer2(arg, context) {" + _
cbReference2 + "; }"
' Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer1", _
callbackScript1, True)
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer2", _
callbackScript2, True)
End Sub
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</div>
</form>
</body>
</html>
Hinweise
Die GetCallbackEventReference(Control, String, String, String) -Methode führt einen Out-of-Band-Rückruf an den Server aus, bei dem es sich um eine geänderte Version des normalen Lebenszyklus einer Seite handelt. Weitere Informationen finden Sie unter Implementieren von Clientrückrufen ohne Postbacks.
Hinweis
Wenn der Browser Microsoft Internet Explorer (Version 5.0 oder höher) ist, wird der Skriptrückrufmechanismus über das Microsoft.XmlHttp-COM-Objekt implementiert und erfordert, dass der Browser so festgelegt ist, dass ActiveX-Steuerelemente ausgeführt werden. Für andere Browser wird eine XMLHttpRequest mit dem lokalen Dokumentobjektmodell (DOM) des Browsers verwendet. Verwenden Sie die SupportsCallback -Eigenschaft, um zu überprüfen, ob ein Browser Clientrückrufe unterstützt. Verwenden Sie die SupportsXmlHttp -Eigenschaft, um zu überprüfen, ob ein Browser XML über HTTP unterstützt. Auf beide Eigenschaften kann über die Browser -Eigenschaft des systeminternen ASP.NET Request -Objekts zugegriffen werden.
Die GetCallbackEventReference -Überladung der GetCallbackEventReference -Methode führt einen Rückruf synchron unter Verwendung von XML über HTTP aus. Beim synchronen Senden von Daten in einem Rückrufszenario werden synchrone Rückrufe sofort zurückgegeben und der Browser nicht blockiert. Es können keine zwei synchronen Rückrufe gleichzeitig im Browser ausgeführt werden. Wenn ein zweiter synchroner Rückruf ausgelöst wird, während eins derzeit aussteht, bricht der zweite synchrone Rückruf den ersten ab, und nur der zweite Rückruf wird zurückgegeben.
Verwenden Sie zum asynchronen Senden von Daten eine der Überladungen, die den useAsync
Parameter akzeptiert. Dabei handelt es sich um einen booleschen Wert, der dieses Verhalten steuert. Im asynchronen Szenario können mehrere ausstehende Rückrufe ausgeführt werden. die Reihenfolge, in der sie zurückgegeben werden, stimmt jedoch nicht garantiert mit der Reihenfolge überein, in der sie initiiert wurden.
Darüber hinaus gibt diese Überladung der GetCallbackEventReference -Methode keine Clientfunktion an, die den Fall einer von der RaiseCallbackEvent -Methode generierten Fehlerbedingung behandelt. Um einen Clientfehlerrückrufhandler anzugeben, verwenden Sie eine der Überladungen, die den clientErrorCallback
Parameter akzeptiert.
Die GetCallbackEventReference(Control, String, String, String) -Methode verwendet einen optionalen Zeichenfolgenparameter argument
und gibt eine Zeichenfolge zurück. Verketten Sie Werte in der Eingabe- bzw. Rückgabezeichenfolge, um mehrere Werte zu übergeben oder zu empfangen.
Hinweis
Vermeiden Sie die Verwendung des Ansichtszustands in der Implementierung von Seiten- oder Steuerelementeigenschaften, die bei Skriptrückrufvorgängen aktualisiert werden müssen. Wenn die Eigenschaften Seitenanforderungen beibehalten sollen, können Sie den Sitzungszustand verwenden.
Weitere Informationen
Gilt für:
GetCallbackEventReference(Control, String, String, String, Boolean)
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Steuerelement, ein Argument, ein Clientskript, einen Kontext sowie einen booleschen Wert ein.
public:
System::String ^ GetCallbackEventReference(System::Web::UI::Control ^ control, System::String ^ argument, System::String ^ clientCallback, System::String ^ context, bool useAsync);
public string GetCallbackEventReference (System.Web.UI.Control control, string argument, string clientCallback, string context, bool useAsync);
member this.GetCallbackEventReference : System.Web.UI.Control * string * string * string * bool -> string
Public Function GetCallbackEventReference (control As Control, argument As String, clientCallback As String, context As String, useAsync As Boolean) As String
Parameter
- control
- Control
Das Server-Control, das den Clientrückruf behandelt. Das Steuerelement muss die ICallbackEventHandler-Schnittstelle implementieren und eine RaiseCallbackEvent(String)-Methode bereitstellen.
- argument
- String
Ein Argument, das vom Clientskript an den Server übergeben wird.
RaiseCallbackEvent(String) -Methode.
- clientCallback
- String
Der Name des Clientereignishandlers, der das Ergebnis des erfolgreich ausgeführten Serverereignisses empfängt.
- context
- String
Clientskript, das auf dem Client vor der Initialisierung des Rückrufs ausgewertet wird. Das Ergebnis des Skripts wird an den Clientereignishandler zurückgegeben.
- useAsync
- Boolean
true
, um den Rückruf asynchron auszuführen, false
, um den Rückruf synchron auszuführen.
Gibt zurück
Der Name einer Clientfunktion, die den Clientrückruf ausführt.
Ausnahmen
Der angegebene Control ist null
.
Das angegebene Control implementiert die ICallbackEventHandler-Schnittstelle nicht.
Hinweise
Diese Überladung der GetCallbackEventReference -Methode erfordert einen useAsync
Parameter, mit dem Sie den Clientrückruf asynchron ausführen können, indem Sie den Wert auf true
festlegen. Die Überladungsversionen dieser Methode, für die der useAsync
Parameter nicht erforderlich ist, legen den Wert standardmäßig auf false
fest.
Weitere Informationen zu dieser Methode finden Sie in den Hinweisen zur Überladungsmethode GetCallbackEventReference .
Weitere Informationen
Gilt für:
GetCallbackEventReference(String, String, String, String, String, Boolean)
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Ziel, ein Argument, ein Clientskript, einen Kontext, einen Fehlerhandler sowie einen booleschen Wert ein.
public:
System::String ^ GetCallbackEventReference(System::String ^ target, System::String ^ argument, System::String ^ clientCallback, System::String ^ context, System::String ^ clientErrorCallback, bool useAsync);
public string GetCallbackEventReference (string target, string argument, string clientCallback, string context, string clientErrorCallback, bool useAsync);
member this.GetCallbackEventReference : string * string * string * string * string * bool -> string
Public Function GetCallbackEventReference (target As String, argument As String, clientCallback As String, context As String, clientErrorCallback As String, useAsync As Boolean) As String
Parameter
- target
- String
Der Name von einem Server-Control, das den Clientrückruf behandelt. Das Steuerelement muss die ICallbackEventHandler-Schnittstelle implementieren und eine RaiseCallbackEvent(String)-Methode bereitstellen.
- argument
- String
Ein Argument, das vom Clientskript an den Server übergeben wird.
RaiseCallbackEvent(String) -Methode.
- clientCallback
- String
Der Name des Clientereignishandlers, der das Ergebnis des erfolgreich ausgeführten Serverereignisses empfängt.
- context
- String
Clientskript, das auf dem Client vor der Initialisierung des Rückrufs ausgewertet wird. Das Ergebnis des Skripts wird an den Clientereignishandler zurückgegeben.
- clientErrorCallback
- String
Der Name des Clientereignishandlers, der das Ergebnis empfängt, wenn ein Fehler im Serverereignishandler auftritt.
- useAsync
- Boolean
true
, um den Rückruf asynchron auszuführen, false
, um den Rückruf synchron auszuführen.
Gibt zurück
Der Name einer Clientfunktion, die den Clientrückruf ausführt.
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie zwei Überladungen der GetCallbackEventReference -Methode in einem Clientrückrufszenario verwendet werden, in dem ganze Zahlen inkrementiert werden.
Es werden zwei Rückrufmechanismen gezeigt; der Unterschied zwischen ihnen ist die Verwendung des context
Parameters. Eine ReceiveServerData1
Clientrückruffunktion wird mithilfe des context
-Parameters bereitgestellt. Im Gegensatz dazu ist die ReceiveServerData2
Clientrückruffunktion in einem <script>
Block auf der Seite definiert. Eine RaiseCallbackEvent -Methode ist der Serverhandler, der den an sie übergebenen Wert inkrementiert, und die GetCallbackResult Methode gibt den inkrementierten Wert als Zeichenfolge zurück. Wenn die RaiseCallbackEvent Methode einen Fehler zurückgibt, wird die Clientfunktion ProcessCallBackError
aufgerufen.
<%@ 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">
public int cbCount = 0;
// Define method that processes the callbacks on server.
public void RaiseCallbackEvent(String eventArgument)
{
cbCount = Convert.ToInt32(eventArgument) + 1;
}
// Define method that returns callback result.
public string GetCallbackResult()
{
return cbCount.ToString();
}
protected void Page_Load(object sender, EventArgs e)
{
// Define a StringBuilder to hold messages to output.
StringBuilder sb = new StringBuilder();
// Check if this is a postback.
sb.Append("No page postbacks have occurred.");
if (Page.IsPostBack)
{
sb.Append("A page postback has occurred.");
}
// Write out any messages.
MyLabel.Text = sb.ToString();
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Define one of the callback script's context.
// The callback script will be defined in a script block on the page.
StringBuilder context1 = new StringBuilder();
context1.Append("function ReceiveServerData1(arg, context)");
context1.Append("{");
context1.Append("Message1.innerText = arg;");
context1.Append("value1 = arg;");
context1.Append("}");
// Define callback references.
String cbReference1 = cs.GetCallbackEventReference(this, "arg",
"ReceiveServerData1", context1.ToString());
String cbReference2 = cs.GetCallbackEventReference("'" +
Page.UniqueID + "'", "arg", "ReceiveServerData2", "",
"ProcessCallBackError", false);
String callbackScript1 = "function CallTheServer1(arg, context) {" +
cbReference1 + "; }";
String callbackScript2 = "function CallTheServer2(arg, context) {" +
cbReference2 + "; }";
// Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer1",
callbackScript1, true);
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer2",
callbackScript2, true);
}
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</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">
Public cbCount As Integer = 0
' Define method that processes the callbacks on server.
Public Sub RaiseCallbackEvent(ByVal eventArgument As String) _
Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent
cbCount = Convert.ToInt32(eventArgument) + 1
End Sub
' Define method that returns callback result.
Public Function GetCallbackResult() _
As String Implements _
System.Web.UI.ICallbackEventHandler.GetCallbackResult
Return cbCount.ToString()
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Define a StringBuilder to hold messages to output.
Dim sb As New StringBuilder()
' Check if this is a postback.
sb.Append("No page postbacks have occurred.")
If (Page.IsPostBack) Then
sb.Append("A page postback has occurred.")
End If
' Write out any messages.
MyLabel.Text = sb.ToString()
' Get a ClientScriptManager reference from the Page class.
Dim cs As ClientScriptManager = Page.ClientScript
' Define one of the callback script's context.
' The callback script will be defined in a script block on the page.
Dim context1 As New StringBuilder()
context1.Append("function ReceiveServerData1(arg, context)")
context1.Append("{")
context1.Append("Message1.innerText = arg;")
context1.Append("value1 = arg;")
context1.Append("}")
' Define callback references.
Dim cbReference1 As String = cs.GetCallbackEventReference(Me, "arg", _
"ReceiveServerData1", context1.ToString())
Dim cbReference2 As String = cs.GetCallbackEventReference("'" & _
Page.UniqueID & "'", "arg", "ReceiveServerData2", "", "ProcessCallBackError", False)
Dim callbackScript1 As String = "function CallTheServer1(arg, context) {" + _
cbReference1 + "; }"
Dim callbackScript2 As String = "function CallTheServer2(arg, context) {" + _
cbReference2 + "; }"
' Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer1", _
callbackScript1, True)
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer2", _
callbackScript2, True)
End Sub
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</div>
</form>
</body>
</html>
Hinweise
Diese Überladung der GetCallbackEventReference -Methode verwendet einen target
Zeichenfolgenparameter anstelle eines Control Parameters. Verwenden Sie diese Überladung, wenn der Rückruf zu einer anderen Als einer Zeichenfolge zurückkehren soll, die den des UniqueID Steuerelements enthält.
Darüber hinaus erfordert diese Überladung der GetCallbackEventReference -Methode einen useAsync
- und einen clientErrorCallback
-Parameter. Mit useAsync
dem -Parameter können Sie den Clientrückruf asynchron ausführen, indem Sie den Wert auf true
festlegen. Die Überladungsversionen dieser Methode, für die der useAsync
Parameter nicht erforderlich ist, legen den Wert standardmäßig auf false
fest. Mit clientErrorCallback
dem -Parameter können Sie den Namen der Clientfunktion definieren, die aufgerufen wird, wenn der Serverhandler, die RaiseCallbackEvent -Methode, einen Fehler zurückgibt. Die Überladungsversionen dieser Methode, für die der clientErrorCallback
Parameter nicht erforderlich ist, legen den Wert auf NULL fest.
Weitere Informationen zu dieser Methode finden Sie in den Hinweisen zur Überladungsmethode GetCallbackEventReference .
Weitere Informationen
Gilt für:
GetCallbackEventReference(Control, String, String, String, String, Boolean)
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufruf einen Clientrückruf für Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode schließt ein angegebenes Steuerelement, ein Argument, ein Clientskript, einen Kontext, einen Fehlerhandler sowie einen booleschen Wert ein.
public:
System::String ^ GetCallbackEventReference(System::Web::UI::Control ^ control, System::String ^ argument, System::String ^ clientCallback, System::String ^ context, System::String ^ clientErrorCallback, bool useAsync);
public string GetCallbackEventReference (System.Web.UI.Control control, string argument, string clientCallback, string context, string clientErrorCallback, bool useAsync);
member this.GetCallbackEventReference : System.Web.UI.Control * string * string * string * string * bool -> string
Public Function GetCallbackEventReference (control As Control, argument As String, clientCallback As String, context As String, clientErrorCallback As String, useAsync As Boolean) As String
Parameter
- control
- Control
Das Server-Control, das den Clientrückruf behandelt. Das Steuerelement muss die ICallbackEventHandler-Schnittstelle implementieren und eine RaiseCallbackEvent(String)-Methode bereitstellen.
- argument
- String
Ein Argument, das vom Clientskript an die RaiseCallbackEvent(String)-Methode des Servers übergeben wird.
- clientCallback
- String
Der Name des Clientereignishandlers, der das Ergebnis des erfolgreich ausgeführten Serverereignisses empfängt.
- context
- String
Clientskript, das auf dem Client vor der Initialisierung des Rückrufs ausgewertet wird. Das Ergebnis des Skripts wird an den Clientereignishandler zurückgegeben.
- clientErrorCallback
- String
Der Name des Clientereignishandlers, der das Ergebnis empfängt, wenn ein Fehler im Serverereignishandler auftritt.
- useAsync
- Boolean
true
, um den Rückruf asynchron auszuführen, false
, um den Rückruf synchron auszuführen.
Gibt zurück
Der Name einer Clientfunktion, die den Clientrückruf ausführt.
Ausnahmen
Der angegebene Control ist null
.
Das angegebene Control implementiert die ICallbackEventHandler-Schnittstelle nicht.
Hinweise
Diese Überladung der GetCallbackEventReference -Methode erfordert einen useAsync
- und einen clientErrorCallback
-Parameter. Mit useAsync
dem -Parameter können Sie den Clientrückruf asynchron ausführen, indem Sie den Wert auf true
festlegen. Die Überladungsversionen dieser Methode, für die der useAsync
Parameter nicht erforderlich ist, legen den Wert standardmäßig auf false
fest. Mit clientErrorCallback
dem -Parameter können Sie den Namen der Clientfunktion definieren, die aufgerufen wird, wenn der Serverhandler (die RaiseCallbackEvent -Methode) einen Fehler zurückgibt. Die Überladungsversionen dieser Methode, für die der clientErrorCallback
Parameter nicht erforderlich ist, legen den Wert auf NULL fest.
Weitere Informationen zu dieser Methode finden Sie in den Hinweisen zur Überladungsmethode GetCallbackEventReference .