ClientScriptManager.IsClientScriptIncludeRegistered 方法

定义

确定 Page 对象是否注册了客户端脚本包含。

重载

IsClientScriptIncludeRegistered(String)

使用指定键确定 Page 对象是否注册了客户端脚本包含。

IsClientScriptIncludeRegistered(Type, String)

使用键和类型确定 Page 对象是否注册了客户端脚本包含。

IsClientScriptIncludeRegistered(String)

使用指定键确定 Page 对象是否注册了客户端脚本包含。

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

参数

key
String

要搜索的客户端脚本包含的键。

返回

Boolean

如果注册了客户端脚本包含,则为 true;否则为 false

注解

在调用该方法之前调用 RegisterClientScriptInclude 此方法以避免注册重复的脚本。 如果脚本需要大量服务器资源才能创建,这一点尤其重要。

客户端脚本包含由其密钥及其类型唯一标识。 具有相同键和类型的脚本被视为重复项。

此方法的IsStartupScriptRegistered此重载调用将类型集为Page对象的重载keytype参数。

另请参阅

适用于

IsClientScriptIncludeRegistered(Type, String)

使用键和类型确定 Page 对象是否注册了客户端脚本包含。

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

参数

type
Type

要搜索的客户端脚本包含的类型。

key
String

要搜索的客户端脚本包含的键。

返回

Boolean

如果注册了客户端脚本包含,则为 true;否则为 false

例外

客户端脚本包含类型为 null

示例

下面的代码示例演示了该方法 IsClientScriptIncludeRegistered 的使用。 请注意,如果删除了检查现有客户端脚本的逻辑,则呈现页面的 HTML 源代码中不会有两个重复的客户端脚本,因为 RegisterClientScriptInclude 该方法会检查重复项。 检查的好处是减少不必要的计算。

<%@ 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>

此示例需要一 Script_include.js个名为 JavaScript 文件,其中包含以下内容:

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

注解

在调用该方法之前调用 RegisterClientScriptInclude 此方法以避免注册重复的客户端脚本包括。 如果脚本需要大量服务器资源才能创建,这一点尤其重要。

客户端脚本包含由其密钥及其类型唯一标识。 具有相同键和类型的脚本被视为重复项。 根据将访问资源的对象指定类型。 例如,使用 Page 实例访问资源时,请指定 Page 类型。

另请参阅

适用于