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.jsJavaScript со следующим содержимым:
function DoClick() {Form1.Message.value='Text from include script.'}
Комментарии
Вызовите этот метод перед вызовом RegisterClientScriptInclude метода, чтобы избежать регистрации повторяющихся клиентских скриптов. Это особенно важно, если скрипту требуется большое количество ресурсов сервера для создания.
Включаемый клиентский скрипт однозначно определяется ключом и его типом. Скрипты с тем же ключом и типом считаются дубликатами. Укажите тип на основе объекта, который будет получать доступ к ресурсу. Например, при использовании экземпляра Страницы для доступа к ресурсу Page укажите тип.