Export (0) Print
Expand All

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.

ExceptionCondition
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

Supported in: 4.5, 4, 3.5, 3.0, 2.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft