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
Ключ включения клиентского скрипта, используемый для поиска.
Возвращаемое значение
true
, если включение клиентского скрипта зарегистрировано; в противном случае — false
.
Комментарии
Вызовите этот метод перед вызовом RegisterClientScriptInclude метода, чтобы избежать регистрации повторяющихся скриптов. Это особенно важно, если скрипту требуется большой объем ресурсов сервера для создания.
Включаемый клиентский скрипт однозначно определяется ключом и его типом. Скрипты с одним и тем же ключом и типом считаются дубликатами.
Эта перегрузка IsStartupScriptRegistered метода вызывает перегрузку, которая принимает как объект key
, так и type
параметр с заданным типом Page .
См. также раздел
Применяется к
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
Ключ включения клиентского скрипта, используемый для поиска.
Возвращаемое значение
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
указывается тип.