ClientScriptManager Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Az ügyfélszkriptek webalkalmazásokban való kezelésére szolgáló módszereket definiál.
public ref class ClientScriptManager sealed
public sealed class ClientScriptManager
type ClientScriptManager = class
Public NotInheritable Class ClientScriptManager
- Öröklődés
-
ClientScriptManager
Példák
Az alábbi példakód az osztály metódusának RegisterClientScriptBlockClientScriptManager használatát mutatja be. A lapon két ügyfélszkript van definiálva: PopupScripta lap betöltésekor figyelmeztető üzenet jelenik meg, a ButtonClickScriptHTML-gomb eseményéhez onClick pedig egy ügyfélkezelőt definiál.
<%@ 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>
Megjegyzések
Az ClientScriptManager osztály az ügyfélszkriptek kezelésére és webalkalmazásokhoz való hozzáadására szolgál. Az objektum tulajdonságából ClientScriptManager lekérheti az ClientScriptPage osztályra mutató hivatkozást.
Az ügyfélszkripteket deklaratív módon is hozzáadhatja egy weblaphoz, ha a szkriptet a lap HTML-jelölőjében szerepelteti. Vannak azonban olyan helyzetek, amikor dinamikusan kell hozzáadni az ügyfélszkriptet. A szkript dinamikus hozzáadásához használja a RegisterClientScriptBlock metódust, a RegisterClientScriptInclude metódust, a RegisterStartupScript metódust vagy a RegisterOnSubmitStatement metódust attól függően, hogy mikor és hogyan szeretné hozzáadni a szkriptet. További információ: Hogyan is: Ügyfélszkript hozzáadása dinamikusan ASP.NET weblapokhoz.
Az ClientScriptManager osztály egyedileg azonosítja a szkripteket egy kulccsal String és egy Type. Az azonos kulccsal és típussal rendelkező szkriptek duplikáltnak minősülnek. A szkripttípus használata segít elkerülni a lapon esetleg használt különböző felhasználói vezérlők hasonló szkriptjeinek összekeverését.
Az ClientScriptManager osztály használható az ügyfélvisszahívások meghívására olyan helyzetekben, amikor a kiszolgálókód futtatása az ügyfélből szükséges utólagos visszaállítás nélkül. Ezt sávon kívüli visszahívásnak nevezzük a kiszolgálóra. Ügyfélvisszahívás esetén az ügyfélszkriptfüggvény aszinkron kérést küld egy ASP.NET weblapra. A weblap a visszahívás feldolgozásához futtatja a normál életciklus módosított verzióját. GetCallbackEventReference A metódussal olyan ügyfélfüggvényre mutató hivatkozást szerezhet be, amely meghíváskor ügyfélvisszahívást kezdeményez egy kiszolgálóeseményre. További információ: Ügyfélvisszahívások végrehajtása postback nélkül.
Note
A szkriptvisszahívások nem működnek olyan régebbi böngészőkben, amelyek nem támogatják a dokumentumobjektum-modellt (DOM), és megkövetelik, hogy az ECMAScript engedélyezve legyen az ügyfélen. Annak ellenőrzéséhez, hogy a böngésző támogatja-e a visszahívásokat, használja a SupportsCallback tulajdonságot, amely az ASP.NET belső Browser objektum Request tulajdonságán keresztül érhető el.
GetPostBackEventReference A metódus és a GetPostBackClientHyperlink metódus használatával definiálhat egy ügyfél-visszavételi eseményt. Ezek a metódusok lehetővé teszik az ügyfélszkriptfüggvények meghívásakor, hogy a kiszolgáló visszakerüljön a lapra. Az ügyfél-visszavételi esemény eltér az ügyfélvisszahívástól abban az esetben, ha a weblap egy normál életciklust hajt végre az ügyfél-visszavételi esemény feldolgozásához.
Note
Ha vezérlőt Button használ, és a UseSubmitBehavior tulajdonság értéke falsea következő, akkor a GetPostBackEventReference metódussal visszaadhatja a vezérlő ügyfél-utáni eseményét Button .
A OnClientClick vezérlő, Button a vezérlő és ImageButton a LinkButton vezérlő tulajdonsága az ügyfélszkript futtatására használható.
Metódusok
| Name | Description |
|---|---|
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetCallbackEventReference(Control, String, String, String, Boolean) |
Olyan ügyfélfüggvényre mutató hivatkozást kér le, amely meghíváskor kezdeményez egy ügyfélhívást a kiszolgálói eseményekre. A túlterhelt metódus ügyfélfüggvénye tartalmaz egy megadott vezérlőt, argumentumot, ügyfélszkriptet, környezetet és logikai értéket. |
| GetCallbackEventReference(Control, String, String, String, String, Boolean) |
Olyan ügyfélfüggvényre mutató hivatkozást kér le, amely meghíváskor kezdeményez egy ügyfélhívást a kiszolgálói eseményekre. A túlterhelt metódus ügyfélfüggvénye tartalmaz egy megadott vezérlőt, argumentumot, ügyfélszkriptet, környezetet, hibakezelőt és logikai értéket. |
| GetCallbackEventReference(Control, String, String, String) |
Olyan ügyfélfüggvényre mutató hivatkozást kér le, amely meghíváskor egy ügyfélhívást kezdeményez egy kiszolgálóeseményre. A túlterhelt metódus ügyfélfüggvénye tartalmaz egy megadott vezérlőt, argumentumot, ügyfélszkriptet és környezetet. |
| GetCallbackEventReference(String, String, String, String, String, Boolean) |
Olyan ügyfélfüggvényre mutató hivatkozást kér le, amely meghíváskor kezdeményez egy ügyfélhívást a kiszolgálói eseményekre. A túlterhelt metódus ügyfélfüggvénye tartalmaz egy megadott célt, argumentumot, ügyfélszkriptet, környezetet, hibakezelőt és logikai értéket. |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetPostBackClientHyperlink(Control, String, Boolean) |
Lekéri az ügyféleseményben a kiszolgálóra a megadott eseményargumentumokkal és logikai jelzéssel |
| GetPostBackClientHyperlink(Control, String) |
Lekéri az ügyféleseményben a kiszolgálóra a megadott vezérlőelemhez és a megadott eseményargumentumokhoz fűzött hivatkozást |
| GetPostBackEventReference(Control, String, Boolean) |
Egy ügyféleseményben használandó sztringet ad vissza a kiszolgálóra. A hivatkozási sztringet az a megadott vezérlő határozza meg, amely kezeli a visszalépést, valamint a további eseményinformációk sztringargumentumát. Opcionálisan regisztrálja az eseményreferenciát az ellenőrzéshez. |
| GetPostBackEventReference(Control, String) |
Egy ügyféleseményben használható sztringet ad vissza a kiszolgálóra. A hivatkozási sztringet az a megadott vezérlő határozza meg, amely kezeli a visszalépést, valamint a további eseményinformációk sztringargumentumát. |
| GetPostBackEventReference(PostBackOptions, Boolean) |
Egy ügyféleseményben használható sztringet ad vissza a kiszolgálóra. A hivatkozási sztringet a megadott PostBackOptions objektum határozza meg. Opcionálisan regisztrálja az eseményreferenciát az ellenőrzéshez. |
| GetPostBackEventReference(PostBackOptions) |
Egy ügyféleseményben használható sztringet ad vissza a kiszolgálóra. A hivatkozási sztringet a megadott PostBackOptions példány határozza meg. |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| GetWebResourceUrl(Type, String) |
Lekéri egy szerelvény erőforrására mutató URL-hivatkozást. |
| IsClientScriptBlockRegistered(String) |
Meghatározza, hogy az ügyfélszkriptblokk regisztrálva van-e az Page objektumban a megadott kulccsal. |
| IsClientScriptBlockRegistered(Type, String) |
Meghatározza, hogy az ügyfélszkriptblokk regisztrálva van-e az Page objektumban kulcs és típus használatával. |
| IsClientScriptIncludeRegistered(String) |
Meghatározza, hogy az ügyfélszkript szerepel-e regisztrálva az Page objektumban a megadott kulccsal. |
| IsClientScriptIncludeRegistered(Type, String) |
Meghatározza, hogy az ügyfélszkript szerepel-e az Page objektumban kulcs és típus használatával. |
| IsOnSubmitStatementRegistered(String) |
Meghatározza, hogy az OnSubmit utasítás regisztrálva van-e az Page objektumban a megadott kulccsal. |
| IsOnSubmitStatementRegistered(Type, String) |
Meghatározza, hogy az OnSubmit utasítás regisztrálva van-e az Page objektumban a megadott kulccsal és típussal. |
| IsStartupScriptRegistered(String) |
Meghatározza, hogy az indítási szkript regisztrálva van-e az Page objektumban a megadott kulccsal. |
| IsStartupScriptRegistered(Type, String) |
Meghatározza, hogy az indítási szkript regisztrálva van-e az Page objektumban a megadott kulccsal és típussal. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| RegisterArrayDeclaration(String, String) |
Egy JavaScript-tömbdeklarációt regisztrál az Page objektummal tömbnév és tömbérték használatával. |
| RegisterClientScriptBlock(Type, String, String, Boolean) |
Az ügyfélszkriptet egy típus, kulcs, szkriptkonstans és logikai érték használatával regisztrálja az Page objektummal, amely jelzi, hogy szkriptcímkéket szeretne-e hozzáadni. |
| RegisterClientScriptBlock(Type, String, String) |
Az ügyfélszkriptet típus, kulcs és szkriptkonstans használatával regisztrálja az Page objektummal. |
| RegisterClientScriptInclude(String, String) |
Az ügyfélszkriptet egy kulccsal és EGY URL-címmel regisztrálja az Page objektummal, amely lehetővé teszi a szkript meghívását az ügyféltől. |
| RegisterClientScriptInclude(Type, String, String) |
Az ügyfélszkript típus, kulcs és URL-cím használatával regisztrálja az Page objektumot. |
| RegisterClientScriptResource(Type, String) |
Az ügyfélszkript-erőforrást egy típus és egy erőforrásnév használatával regisztrálja az Page objektummal. |
| RegisterExpandoAttribute(String, String, String, Boolean) |
A megadott vezérlőelem egyéni (expando) attribútumaként regisztrál egy nevet/értékpárt egy vezérlőazonosító, egy attribútumnév, egy attribútumérték és egy logikai érték alapján, amely jelzi, hogy az attribútumérték kódolható-e. |
| RegisterExpandoAttribute(String, String, String) |
A megadott vezérlőelem egyéni (expando) attribútumaként regisztrál egy nevet/értékpárt egy vezérlőazonosító, attribútumnév és attribútumérték alapján. |
| RegisterForEventValidation(PostBackOptions) |
Eseményhivatkozás regisztrálása az ellenőrzéshez a következővel PostBackOptions: . |
| RegisterForEventValidation(String, String) |
Eseményhivatkozást regisztrál az ellenőrzéshez egy egyedi vezérlőazonosítóval és eseményargumentumokkal, amelyek az eseményt létrehozó ügyfélvezérlőt jelölik. |
| RegisterForEventValidation(String) |
Eseményhivatkozást regisztrál az ellenőrzéshez egy egyedi vezérlőazonosítóval, amely az eseményt létrehozó ügyfélvezérlőt jelöli. |
| RegisterHiddenField(String, String) |
Rejtett érték regisztrálása az Page objektummal. |
| RegisterOnSubmitStatement(Type, String, String) |
Egy OnSubmit utasítást regisztrál az Page objektummal egy típus, egy kulcs és egy szkriptkonstans használatával. Az utasítás a HtmlForm beküldéskor fut. |
| RegisterStartupScript(Type, String, String, Boolean) |
Az indítási szkriptet egy típus, egy kulcs, egy szkriptkonstans és egy logikai érték használatával regisztrálja az Page objektummal, amely jelzi, hogy hozzá kell-e adni szkriptcímkéket. |
| RegisterStartupScript(Type, String, String) |
Az indítási szkriptet egy típus, egy kulcs és egy szkriptkonstans használatával regisztrálja az Page objektummal. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
| ValidateEvent(String, String) |
Egy olyan ügyféleseményt ellenőriz, amely regisztrálva lett az eseményérvényesítéshez a RegisterForEventValidation(String, String) módszerrel. |
| ValidateEvent(String) |
Egy olyan ügyféleseményt ellenőriz, amely regisztrálva lett az eseményérvényesítéshez a RegisterForEventValidation(String) módszerrel. |