ClientScriptManager.IsClientScriptIncludeRegistered Method

Definition

Determines whether the client script include is registered with the Page object.

Overloads

IsClientScriptIncludeRegistered(String)

Determines whether the client script include is registered with the Page object using the specified key.

IsClientScriptIncludeRegistered(Type, String)

Determines whether the client script include is registered with the Page object using a key and type.

IsClientScriptIncludeRegistered(String)

Determines whether the client script include is registered with the Page object using the specified key.

public:
 bool IsClientScriptIncludeRegistered(System::String ^ key);
public bool IsClientScriptIncludeRegistered (string key);
member this.IsClientScriptIncludeRegistered : string -> bool
Public Function IsClientScriptIncludeRegistered (key As String) As Boolean

Parameters

key
String

The key of the client script include to search for.

Returns

true if the client script include is registered; otherwise, false.

Remarks

Call this method before calling the RegisterClientScriptInclude method to avoid registering duplicate scripts. This is particularly important if the script requires a large amount of server resources to create.

A client script include 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 key and a type parameter with the type set as a Page object.

See also

IsClientScriptIncludeRegistered(Type, String)

Determines whether the client script include is registered with the Page object using a key and type.

public:
 bool IsClientScriptIncludeRegistered(Type ^ type, System::String ^ key);
public bool IsClientScriptIncludeRegistered (Type type, string key);
member this.IsClientScriptIncludeRegistered : Type * string -> bool
Public Function IsClientScriptIncludeRegistered (type As Type, key As String) As Boolean

Parameters

type
Type

The type of the client script include to search for.

key
String

The key of the client script include to search for.

Returns

true if the client script include is registered; otherwise, false.

Exceptions

The client script include type is null.

Examples

The following code example demonstrates the use of the IsClientScriptIncludeRegistered method. Note that, if the logic to check for the existing client script include were removed, there would not be two duplicate client scripts in the HTML source code of the rendered page because the RegisterClientScriptInclude 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, type and url of the client script on the page.
        String csname = "ButtonClickScript";
        String csurl = "~/script_include.js";
        Type cstype = this.GetType();

        // Get a ClientScriptManager reference from the Page class.
        ClientScriptManager cs = Page.ClientScript;

        // Check to see if the include script exists already.
        if (!cs.IsClientScriptIncludeRegistered(cstype, csname))
        {
            cs.RegisterClientScriptInclude(cstype, csname, ResolveClientUrl(csurl));
        }

    }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager Example</title>
  </head>
  <body>
     <form id="Form1" runat="server">
     <div>
        <input type="text"
               id="Message"/> 
        <input type="button" 
               value="ClickMe"
               onclick="DoClick()"/>
     </div>
     </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, type and url of the client script on the page.
        Dim csname As String = "ButtonClickScript"
        Dim csurl As String = "~/script_include.js"
        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 include script is already registered.
        If (Not cs.IsClientScriptIncludeRegistered(cstype, csname)) Then
      
            cs.RegisterClientScriptInclude(cstype, csname, ResolveClientUrl(csurl))
      
        End If
    
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ClientScriptManager Example</title>
</head>
<body>
     <form id="Form1" runat="server">
     <div>
        <input type="text"
               id="Message"/> 
        <input type="button" 
               value="ClickMe"
               onclick="DoClick()"/>
     </div>
     </form>
</body>
</html>

This example requires a JavaScript file named Script_include.js, with the following contents:

function DoClick() {Form1.Message.value='Text from include script.'}  

Remarks

Call this method before calling the RegisterClientScriptInclude method to avoid registering duplicate client script includes. This is particularly important if the script requires a large amount of server resources to create.

A client script include is uniquely identified by its key and its type. Scripts with the same key and type are considered duplicates. You specify the type based on the object that will be accessing the resource. For instance, when using a Page instance to access the resource, you specify the Page type.

See also

Applies to