IsClientScriptIncludeRegistered Method (Type, String)

ClientScriptManager.IsClientScriptIncludeRegistered Method (Type, String)

 

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

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

public bool IsClientScriptIncludeRegistered(
	Type type,
	string key
)

Parameters

type
Type: System.Type

The type of the client script include to search for.

key
Type: System.String

The key of the client script include to search for.

Return Value

Type: System.Boolean

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

Exception Condition
ArgumentNullException

The client script include type is null.

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.

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>

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

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

.NET Framework
Available since 2.0
Return to top
Show:
© 2016 Microsoft