ScriptManager.RegisterClientScriptInclude 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
向 ScriptManager 控件注册一个客户端脚本文件,以便和 UpdatePanel 控件中的某个控件一起使用,然后将脚本文件引用添加到页面中。
重载
RegisterClientScriptInclude(Control, Type, String, String) |
向 ScriptManager 控件注册一个客户端脚本文件,以便和 UpdatePanel 控件中的某个控件一起使用,然后将脚本文件引用添加到页面中。 |
RegisterClientScriptInclude(Page, Type, String, String) |
每次发生异步回发时都向 ScriptManager 控件注册客户端脚本,然后将一个脚本文件引用添加到页面中。 |
RegisterClientScriptInclude(Control, Type, String, String)
向 ScriptManager 控件注册一个客户端脚本文件,以便和 UpdatePanel 控件中的某个控件一起使用,然后将脚本文件引用添加到页面中。
public:
static void RegisterClientScriptInclude(System::Web::UI::Control ^ control, Type ^ type, System::String ^ key, System::String ^ url);
public static void RegisterClientScriptInclude (System.Web.UI.Control control, Type type, string key, string url);
static member RegisterClientScriptInclude : System.Web.UI.Control * Type * string * string -> unit
Public Shared Sub RegisterClientScriptInclude (control As Control, type As Type, key As String, url As String)
参数
- control
- Control
正在注册客户端脚本文件的控件。
- type
- Type
客户端脚本文件的类型。 通常使用 typeof 运算符 (C#) 或 GetType 运算符 (Visual Basic) 来指定此参数,以检索正在注册脚本的控件的类型。
- key
- String
脚本文件的唯一标识符。
- url
- String
脚本文件的 URL。
例外
示例
<%@ 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)
{
if (!IsPostBack)
Calendar1.SelectedDate = DateTime.Today;
}
protected void Page_PreRender(object sender, EventArgs e)
{
ScriptManager.RegisterClientScriptInclude(
this,
typeof(Page),
"AlertScript",
ResolveClientUrl("~/scripts/script_alertdiv.js"));
}
protected void IncrementButton_Click(object sender, EventArgs e)
{
Calendar1.SelectedDate = Calendar1.SelectedDate.AddDays(1.0);
}
protected void DecrementButton_Click(object sender, EventArgs e)
{
Calendar1.SelectedDate = Calendar1.SelectedDate.AddDays(-1.0);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>ScriptManager RegisterClientScriptInclude</title>
<style type="text/css">
div.MessageStyle
{
background-color: Green;
top: 95%;
left: 1%;
position: absolute;
visibility: hidden;
}
</style>
</head>
<body>
<form id="Form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
runat="server"/>
<script type="text/javascript">
Sys.WebForms.PageRequestManager.instance.add_endRequest(Notify);
</script>
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<asp:Calendar ID="Calendar1" runat="server"/>
<br />
Change the selected date:
<asp:Button runat="server" ID="DecrementButton" Text="-" OnClick="DecrementButton_Click" />
<asp:Button runat="server" ID="IncrementButton" Text="+" OnClick="IncrementButton_Click" />
</ContentTemplate>
</asp:UpdatePanel>
<div id="NotifyDiv" class="MessageStyle">
Updates are complete.
</div>
</div>
</form>
</body>
</html>
function Notify(sender, arg)
{
ActivateAlertDiv('visible', 'NotifyDiv');
setTimeout("ActivateAlertDiv('hidden', 'NotifyDiv')", 1000);
}
function ActivateAlertDiv(visstring, elem)
{
var adiv = document.getElementById(elem);
adiv.style.visibility = visstring;
}
注解
使用 RegisterClientScriptInclude 方法为参与部分页更新的页面或页面的一部分注册客户端脚本文件。 仅当 表示正在更新的控件内的UpdatePanel控件时,control
才会将使用此方法注册的客户端脚本文件发送到页面。 若要在每次发生异步回发时注册脚本文件,请使用 RegisterClientScriptInclude(Page, Type, String, String) 此方法的重载。
如果要注册与分页更新无关的脚本块,并且希望在初始页面呈现期间只注册脚本块一次,请使用 RegisterClientScriptBlock 类的 ClientScriptManager 方法。 可以从页面的 属性获取对 ClientScriptManager 对象的 ClientScript 引用。
方法 RegisterClientScriptInclude 通过呈现 script
其开始标记包含 src
属性的元素,在页面上注册客户端脚本文件。 参数 url
用于设置 src
属性。 若要解析 URL,请使用 ResolveClientUrl 方法。 此方法使用为其调用的 URL 的上下文来解析路径。
RegisterClientScriptInclude和 RegisterClientScriptResource 方法都向浏览器呈现脚本文件。 如果脚本文件) 的类型和键 (相同,或者已呈现嵌入资源) 的相同类型和资源名称 (,则不会再次呈现该脚本。
另请参阅
适用于
RegisterClientScriptInclude(Page, Type, String, String)
每次发生异步回发时都向 ScriptManager 控件注册客户端脚本,然后将一个脚本文件引用添加到页面中。
public:
static void RegisterClientScriptInclude(System::Web::UI::Page ^ page, Type ^ type, System::String ^ key, System::String ^ url);
public static void RegisterClientScriptInclude (System.Web.UI.Page page, Type type, string key, string url);
static member RegisterClientScriptInclude : System.Web.UI.Page * Type * string * string -> unit
Public Shared Sub RegisterClientScriptInclude (page As Page, type As Type, key As String, url As String)
参数
- page
- Page
正在注册客户端脚本文件的页对象。
- type
- Type
客户端脚本文件的类型。 通常使用 typeof 运算符 (C#) 或 GetType 运算符 (Visual Basic) 来指定此参数,以检索正在注册脚本的控件的类型。
- key
- String
脚本文件的唯一标识符。
- url
- String
脚本文件的 URL。
例外
注解
使用此方法注册脚本文件时,每次发生异步回发时,都会呈现该脚本。 若要为控件内的 UpdatePanel 控件注册脚本文件,以便仅在更新控件时 UpdatePanel 注册该脚本,请使用 RegisterClientScriptInclude(Control, Type, String, String) 此方法的重载。
如果要注册与分页更新无关的脚本块,并且希望在初始页面呈现期间只注册脚本块一次,请使用 RegisterClientScriptBlock 类的 ClientScriptManager 方法。 可以从页面的 属性获取对 ClientScriptManager 对象的 ClientScript 引用。