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 sie zwei Überladungen der GetCallbackEventReference Methode in einem Clientrückrufszenario verwenden, das ganze Zahlen erhöht.
Es werden zwei Rückrufmechanismen angezeigt; Der Unterschied zwischen ihnen ist die Verwendung des context
Parameters. Mithilfe des context
Parameters wird eine ReceiveServerData1
Clientrückruffunktion bereitgestellt. Im Gegensatz dazu wird die ReceiveServerData2
Clientrückruffunktion in einem <script>
Block auf der Seite definiert. Eine RaiseCallbackEvent Methode ist der Serverhandler, der den an ihn übergebenen Wert erhöht und die GetCallbackResult Methode den inkrementierten Wert als Zeichenfolge zurückgibt. 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, der eine geänderte Version des normalen Lebenszyklus einer Seite ist. 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 festgelegt wird, um ActiveX Steuerelemente auszuführen. Für andere Browser wird ein 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. Beide Eigenschaften sind über die Browser Eigenschaft des systeminternen ASP.NET Request Objekts zugänglich.
Die GetCallbackEventReference Überladung der GetCallbackEventReference Methode führt synchron einen Rückruf mithilfe von XML über HTTP aus. Beim synchronen Senden von Daten in einem Rückrufszenario kehren synchrone Rückrufe sofort zurück und blockieren den Browser nicht. Kein synchroner Rückruf kann gleichzeitig im Browser ausgeführt werden. Wenn ein zweiter synchroner Rückruf ausgelöst wird, während eine aktuell aussteht, wird der zweite synchrone Rückruf den ersten abbricht und nur der zweite Rückruf zurückgegeben.
Um Daten asynchron zu senden, verwenden Sie eine der Überladungen, die den useAsync
Parameter verwendet, was ein boolescher Wert ist, der dieses Verhalten steuert. Im asynchronen Szenario können Mehrere ausstehende Rückrufe vorhanden sein; die Reihenfolge, in der sie zurückkehren, ist jedoch nicht garantiert, dass sie der Reihenfolge entsprechen, in der sie initiiert wurden.
Darüber hinaus gibt diese Überladung der GetCallbackEventReference Methode keine Clientfunktion an, um den Fall einer von der RaiseCallbackEvent Methode generierten Fehlerbedingung zu behandeln. Um einen Clientfehler-Rückrufhandler anzugeben, verwenden Sie eine der Überladungen, die den clientErrorCallback
Parameter verwendet.
Die GetCallbackEventReference(Control, String, String, String) Methode verwendet einen optionalen Zeichenfolgenparameter argument
und gibt eine Zeichenfolge zurück. Um mehrere Werte zu übergeben oder zu empfangen, verketten Sie Werte in der Eingabe- oder Rückgabezeichenfolge.
Hinweis
Vermeiden Sie die Verwendung des Ansichtszustands in der Implementierung von Seiten- oder Steuerelementeigenschaften, die während Skriptrückrufvorgängen aktualisiert werden müssen. Wenn die Eigenschaften Seitenanforderungen überleben sollen, können Sie den Sitzungszustand verwenden.
Siehe auch
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 true
auf festlegen. Die Überladungsversionen dieser Methode, die keinen useAsync
Parameter erfordern, legen den Wert standardmäßig fest false
.
Weitere Informationen zu dieser Methode finden Sie in den Anmerkungen zur Überladungsmethode GetCallbackEventReference .
Siehe auch
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 sie zwei Überladungen der GetCallbackEventReference Methode in einem Clientanrufszenario verwenden, das ganze Zahlen erhöht.
Zwei Rückrufmechanismen werden gezeigt; Der Unterschied zwischen ihnen ist die Verwendung des context
Parameters. Eine ReceiveServerData1
Client-Rückruffunktion wird mithilfe des context
Parameters bereitgestellt. Im Gegensatz dazu wird die ReceiveServerData2
Client-Rückruffunktion in einem <script>
Block auf der Seite definiert. Eine RaiseCallbackEvent Methode ist der Serverhandler, der den wert, der an ihn übergeben wird, und die GetCallbackResult Methode gibt den inkrementierten Wert als Zeichenfolge zurück. Wenn die Methode einen Fehler zurückgibt, wird die RaiseCallbackEvent 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 anstelle eines Control Parameters einen target
Zeichenfolgenparameter. Verwenden Sie diese Überladung, wenn der Rückruf zu einer anderen Als einer Zeichenfolge zurückgeht, die das UniqueID Steuerelement 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, die keinen useAsync
Parameter erfordern, legen den Wert standardmäßig fest false
. 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, die den Parameter nicht benötigen, legen den clientErrorCallback
Wert auf null fest.
Weitere Informationen zu dieser Methode finden Sie in den Anmerkungen zur Überladungsmethode GetCallbackEventReference .
Siehe auch
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 dem useAsync
Parameter können Sie den Clientanruf asynchron ausführen, indem Sie den Wert auf true
festlegen. Die Überladungsversionen dieser Methode, die den Parameter nicht benötigen, legen den useAsync
Wert false
standardmäßig 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, die den Parameter nicht benötigen, legen den clientErrorCallback
Wert auf null fest.
Weitere Informationen zu dieser Methode finden Sie in den Anmerkungen zur Überladungsmethode GetCallbackEventReference .