ClientScriptManager Klasse
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.
Definiert Methoden zum Verwalten von Clientskripts in Webanwendungen.
public ref class ClientScriptManager sealed
public sealed class ClientScriptManager
type ClientScriptManager = class
Public NotInheritable Class ClientScriptManager
- Vererbung
-
ClientScriptManager
Beispiele
Im folgenden Codebeispiel wird die Verwendung der RegisterClientScriptBlock Methode der ClientScriptManager Klasse veranschaulicht. Zwei Clientskripts werden auf der Seite definiert: PopupScript, die eine Warnmeldung anzeigt, wenn die Seite geladen wird, und ButtonClickScript, die einen Clienthandler für das Ereignis einer HTML-Schaltfläche onClick definiert.
<%@ Page Language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public void Page_Load(Object sender, EventArgs e)
{
// Define the name and type of the client scripts on the page.
String csname1 = "PopupScript";
String csname2 = "ButtonClickScript";
Type cstype = this.GetType();
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Check to see if the startup script is already registered.
if (!cs.IsStartupScriptRegistered(cstype, csname1))
{
String cstext1 = "alert('Hello World');";
cs.RegisterStartupScript(cstype, csname1, cstext1, true);
}
// Check to see if the client script is already registered.
if (!cs.IsClientScriptBlockRegistered(cstype, csname2))
{
StringBuilder cstext2 = new StringBuilder();
cstext2.Append("<script type=\"text/javascript\"> function DoClick() {");
cstext2.Append("Form1.Message.value='Text from client script.'} </");
cstext2.Append("script>");
cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString(), false);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Define the name and type of the client scripts on the page.
Dim csname1 As String = "PopupScript"
Dim csname2 As String = "ButtonClickScript"
Dim cstype As Type = Me.GetType()
' Get a ClientScriptManager reference from the Page class.
Dim cs As ClientScriptManager = Page.ClientScript
' Check to see if the startup script is already registered.
If (Not cs.IsStartupScriptRegistered(cstype, csname1)) Then
Dim cstext1 As String = "alert('Hello World');"
cs.RegisterStartupScript(cstype, csname1, cstext1, True)
End If
' Check to see if the client script is already registered.
If (Not cs.IsClientScriptBlockRegistered(cstype, csname2)) Then
Dim cstext2 As New StringBuilder()
cstext2.Append("<script type=""text/javascript""> function DoClick() {")
cstext2.Append("Form1.Message.value='Text from client script.'} </")
cstext2.Append("script>")
cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString(), False)
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
</form>
</body>
</html>
Hinweise
Die ClientScriptManager Klasse wird verwendet, um Clientskripts zu verwalten und sie webanwendungen hinzuzufügen. Sie können einen Verweis auf die ClientScriptManager Klasse aus der ClientScript Eigenschaft des Page Objekts abrufen.
Sie können einer Webseite deklarativ ein Clientskript hinzufügen, indem Sie das Skript im HTML-Markup der Seite einfügen. Es gibt jedoch Situationen, in denen das dynamische Hinzufügen von Clientskripts erforderlich ist. Wenn Sie ein Skript dynamisch hinzufügen möchten, verwenden Sie die RegisterClientScriptBlock Methode, die RegisterClientScriptInclude Methode, die RegisterStartupScript Methode oder die RegisterOnSubmitStatement Methode, je nachdem, wann und wie Sie das Skript hinzufügen möchten. Weitere Informationen finden Sie unter How to: Add Client Script Dynamically to ASP.NET Web Pages.
Die ClientScriptManager Klasse identifiziert Skripts eindeutig anhand eines Schlüssels String und einer Type. Skripts mit demselben Schlüssel und Typ werden als Duplikate betrachtet. Die Verwendung des Skripttyps hilft, verwirrende ähnliche Skripts aus verschiedenen Benutzersteuerelementen zu vermeiden, die möglicherweise auf der Seite verwendet werden.
Die ClientScriptManager Klasse kann verwendet werden, um Clientrückrufe in Situationen aufzurufen, in denen es wünschenswert ist, Servercode vom Client auszuführen, ohne einen Postback auszuführen. Dies wird als Out-of-Band-Rückruf an den Server bezeichnet. In einem Clientrückruf sendet eine Clientskriptfunktion eine asynchrone Anforderung an eine ASP.NET Webseite. Die Webseite führt eine geänderte Version des normalen Lebenszyklus aus, um den Rückruf zu verarbeiten. Verwenden Sie die GetCallbackEventReference Methode, um einen Verweis auf eine Clientfunktion abzurufen, die beim Aufrufen einen Clientrückruf zu einem Serverereignis initiiert. Weitere Informationen finden Sie unter Implementieren von Clientrückrufen ohne Postbacks.
Hinweis
Skriptrückrufe funktionieren in älteren Browsern, die das Document Object Model (DOM) nicht unterstützen, und sie erfordern, dass ECMAScript auf dem Client aktiviert ist. Verwenden Sie die SupportsCallback Eigenschaft, auf die über die Browser Eigenschaft des ASP.NET systeminternen Request Objekts zugegriffen werden kann, um zu überprüfen, ob der Browser Rückrufe unterstützt.
Verwenden Sie die GetPostBackEventReference Methode und die GetPostBackClientHyperlink Methode, um ein Client-Postbackereignis zu definieren. Mit diesen Methoden können Clientskriptfunktionen aktiviert werden, wenn sie aufgerufen werden, damit der Server wieder auf der Seite posten kann. Ein Client-Postbackereignis unterscheidet sich von einem Clientrückruf, in dem die Webseite einen normalen Lebenszyklus zum Verarbeiten des Client-Postbackereignisses abgeschlossen hat.
Hinweis
Wenn Sie ein Button Steuerelement verwenden und die UseSubmitBehavior Eigenschaft auf false festgelegt ist, können Sie die GetPostBackEventReference Methode verwenden, um das Client-Postbackereignis für das Button Steuerelement zurückzugeben.
Die OnClientClick Eigenschaft des Steuerelements, ImageButton des Button Steuerelements und LinkButton des Steuerelements kann zum Ausführen von Clientskripts verwendet werden.
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetCallbackEventReference(Control, String, String, String, Boolean) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufrufen einen Clientaufruf an Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode enthält ein angegebenes Steuerelement, Argument, Clientskript, Kontext und booleschen Wert. |
| GetCallbackEventReference(Control, String, String, String, String, Boolean) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufrufen einen Clientaufruf an Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode enthält ein angegebenes Steuerelement, Argument, Clientskript, Kontext, Fehlerhandler und booleschen Wert. |
| GetCallbackEventReference(Control, String, String, String) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufrufen einen Clientaufruf an ein Serverereignis initiiert. Die Clientfunktion für diese überladene Methode enthält ein angegebenes Steuerelement, Argument, Clientskript und Kontext. |
| GetCallbackEventReference(String, String, String, String, String, Boolean) |
Ruft einen Verweis auf eine Clientfunktion ab, die beim Aufrufen einen Clientaufruf an Serverereignisse initiiert. Die Clientfunktion für diese überladene Methode enthält ein angegebenes Ziel, Argument, Clientskript, Kontext, Fehlerhandler und boolescher Wert. |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetPostBackClientHyperlink(Control, String, Boolean) |
Ruft einen Verweis ab, |
| GetPostBackClientHyperlink(Control, String) |
Ruft einen Verweis ab, |
| GetPostBackEventReference(Control, String, Boolean) |
Gibt eine Zeichenfolge zurück, die in einem Clientereignis verwendet werden soll, um postback auf dem Server zu verursachen. Die Referenzzeichenfolge wird durch das angegebene Steuerelement definiert, das den Postback behandelt, und ein Zeichenfolgenargument mit zusätzlichen Ereignisinformationen. Registrieren Sie optional den Ereignisverweis für die Überprüfung. |
| GetPostBackEventReference(Control, String) |
Gibt eine Zeichenfolge zurück, die in einem Clientereignis verwendet werden kann, um postback auf dem Server zu verursachen. Die Referenzzeichenfolge wird durch das angegebene Steuerelement definiert, das den Postback behandelt, und ein Zeichenfolgenargument mit zusätzlichen Ereignisinformationen. |
| GetPostBackEventReference(PostBackOptions, Boolean) |
Gibt eine Zeichenfolge zurück, die in einem Clientereignis verwendet werden kann, um postback auf dem Server zu verursachen. Die Referenzzeichenfolge wird durch das angegebene PostBackOptions Objekt definiert. Registrieren Sie optional den Ereignisverweis für die Überprüfung. |
| GetPostBackEventReference(PostBackOptions) |
Gibt eine Zeichenfolge zurück, die in einem Clientereignis verwendet werden kann, um postback auf dem Server zu verursachen. Die Referenzzeichenfolge wird von der angegebenen PostBackOptions Instanz definiert. |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| GetWebResourceUrl(Type, String) |
Ruft einen URL-Verweis auf eine Ressource in einer Assembly ab. |
| IsClientScriptBlockRegistered(String) |
Bestimmt, ob der Clientskriptblock mit dem angegebenen Schlüssel mit dem Page Objekt registriert wird. |
| IsClientScriptBlockRegistered(Type, String) |
Bestimmt, ob der Clientskriptblock mit einem Schlüssel und Typ mit dem Page Objekt registriert ist. |
| IsClientScriptIncludeRegistered(String) |
Bestimmt, ob das Clientskript einschließen mit dem angegebenen Schlüssel mit dem Page Objekt registriert ist. |
| IsClientScriptIncludeRegistered(Type, String) |
Bestimmt, ob das Clientskript einschließen mit einem Schlüssel und Typ mit dem Page Objekt registriert ist. |
| IsOnSubmitStatementRegistered(String) |
Bestimmt, ob die OnSubmit-Anweisung mit dem Page angegebenen Schlüssel beim Objekt registriert ist. |
| IsOnSubmitStatementRegistered(Type, String) |
Bestimmt, ob die OnSubmit-Anweisung mit dem Page angegebenen Schlüssel und Typ beim Objekt registriert ist. |
| IsStartupScriptRegistered(String) |
Bestimmt, ob das Startskript mit dem Page angegebenen Schlüssel beim Objekt registriert ist. |
| IsStartupScriptRegistered(Type, String) |
Bestimmt, ob das Startskript mit dem Page angegebenen Schlüssel und Typ beim Objekt registriert ist. |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| RegisterArrayDeclaration(String, String) |
Registriert eine JavaScript-Arraydeklaration mit dem Page Objekt unter Verwendung eines Arraynamens und eines Arraywerts. |
| RegisterClientScriptBlock(Type, String, String, Boolean) |
Registriert das Clientskript mit dem Page Objekt mithilfe eines Typs, eines Schlüssels, eines Skriptliterals und eines booleschen Werts, der angibt, ob Skripttags hinzugefügt werden sollen. |
| RegisterClientScriptBlock(Type, String, String) |
Registriert das Clientskript mit dem Page Objekt mithilfe eines Typs, Schlüssels und Skriptliterals. |
| RegisterClientScriptInclude(String, String) |
Registriert das Clientskript mit dem Page Objekt mithilfe eines Schlüssels und einer URL, wodurch das Skript vom Client aufgerufen werden kann. |
| RegisterClientScriptInclude(Type, String, String) |
Registriert das Clientskript, das Page das Objekt mit einem Typ, einem Schlüssel und einer URL enthält. |
| RegisterClientScriptResource(Type, String) |
Registriert die Clientskriptressource mit dem Page Objekt mithilfe eines Typs und eines Ressourcennamens. |
| RegisterExpandoAttribute(String, String, String, Boolean) |
Registriert ein Name/Wert-Paar als benutzerdefiniertes (expando)-Attribut des angegebenen Steuerelements mit einer Steuerelement-ID, einem Attributnamen, einem Attributwert und einem booleschen Wert, der angibt, ob der Attributwert codiert werden soll. |
| RegisterExpandoAttribute(String, String, String) |
Registriert ein Name-Wert-Paar als benutzerdefiniertes (expando)-Attribut des angegebenen Steuerelements, wobei eine Steuerelement-ID, ein Attributname und ein Attributwert angegeben sind. |
| RegisterForEventValidation(PostBackOptions) |
Registriert einen Ereignisverweis für die Überprüfung bei PostBackOptions. |
| RegisterForEventValidation(String, String) |
Registriert einen Ereignisverweis für die Überprüfung mit einer eindeutigen Steuerelement-ID und Ereignisargumenten, die das Clientsteuerelement darstellen, das das Ereignis generiert. |
| RegisterForEventValidation(String) |
Registriert einen Ereignisverweis für die Überprüfung mit einer eindeutigen Steuerelement-ID, die das Clientsteuerelement darstellt, das das Ereignis generiert. |
| RegisterHiddenField(String, String) |
Registriert einen ausgeblendeten Wert mit dem Page Objekt. |
| RegisterOnSubmitStatement(Type, String, String) |
Registriert eine OnSubmit-Anweisung mit dem Page Objekt mithilfe eines Typs, eines Schlüssels und eines Skriptliterals. Die Anweisung wird ausgeführt, wenn die HtmlForm Übermittlung erfolgt. |
| RegisterStartupScript(Type, String, String, Boolean) |
Registriert das Startskript mit dem Page Objekt mithilfe eines Typs, eines Schlüssels, eines Skriptliterals und eines booleschen Werts, der angibt, ob Skripttags hinzugefügt werden sollen. |
| RegisterStartupScript(Type, String, String) |
Registriert das Startskript mit dem Page Objekt mithilfe eines Typs, eines Schlüssels und eines Skriptliterals. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
| ValidateEvent(String, String) |
Überprüft ein Clientereignis, das mithilfe der Methode für die RegisterForEventValidation(String, String) Ereignisüberprüfung registriert wurde. |
| ValidateEvent(String) |
Überprüft ein Clientereignis, das mithilfe der Methode für die RegisterForEventValidation(String) Ereignisüberprüfung registriert wurde. |