ClientScriptManager.IsStartupScriptRegistered Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Determines whether the startup script is registered with the Page object.
Overloads
IsStartupScriptRegistered(Type, String) |
Determines whether the startup script is registered with the Page object using the specified key and type. |
IsStartupScriptRegistered(String) |
Determines whether the startup script is registered with the Page object using the specified key. |
IsStartupScriptRegistered(Type, String)
Determines whether the startup script is registered with the Page object using the specified key and type.
public:
bool IsStartupScriptRegistered(Type ^ type, System::String ^ key);
public bool IsStartupScriptRegistered (Type type, string key);
member this.IsStartupScriptRegistered : Type * string -> bool
Public Function IsStartupScriptRegistered (type As Type, key As String) As Boolean
Parameters
- type
- Type
The type of the startup script to search for.
- key
- String
The key of the startup script to search for.
Returns
true
if the startup script is registered; otherwise, false
.
Exceptions
The startup script type is null
.
Examples
The following code example demonstrates the use of the IsStartupScriptRegistered method. Note that, if the logic to check for the existing startup script block were removed, there would not be two duplicate startup scripts in the HTML source code of the rendered page because the RegisterStartupScript method checks for duplicates. The benefit of checking is to reduce unnecessary computation.
<%@ 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>
Remarks
Call this method before calling the RegisterStartupScript method to avoid registering duplicate scripts. This is particularly important if the script requires a large amount of server resources to create.
A client startup script is uniquely identified by its key and its type. Scripts with the same key and type are considered duplicates.
See also
Applies to
IsStartupScriptRegistered(String)
Determines whether the startup script is registered with the Page object using the specified key.
public:
bool IsStartupScriptRegistered(System::String ^ key);
public bool IsStartupScriptRegistered (string key);
member this.IsStartupScriptRegistered : string -> bool
Public Function IsStartupScriptRegistered (key As String) As Boolean
Parameters
- key
- String
The key of the startup script to search for.
Returns
true
if the startup script is registered; otherwise, false
.
Remarks
Call this method before calling the RegisterStartupScript method to avoid registering duplicate scripts. This is particularly important if the script requires a large amount of server resources to create.
A startup script is uniquely identified by its key and its type. Scripts with the same key and type are considered duplicates.
This overload of the IsStartupScriptRegistered method calls the overload that takes both a string key
and a type
parameter with the type set as a Page object