首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何让Page.ClientScript.RegisterClientScriptInclude包含在头部?

如何让Page.ClientScript.RegisterClientScriptInclude包含在头部?
EN

Stack Overflow用户
提问于 2009-02-01 02:18:48
回答 3查看 22K关注 0票数 17

所包含的脚本引用,特别是jQuery,将在视图状态之后呈现。有没有办法把这个放到< head>中?

代码语言:javascript
复制
Page.ClientScript.RegisterClientScriptInclude("jQuery", "/scripts/jquery.js");

我正在尝试在用户控件的页面加载中注册jquery.js。

提前感谢!

附注:如果不能(用ClientScript)做到这一点,有谁知道他们为什么不把它内置进去呢?

更新

我需要的ClientScript管理器的主要特性是能够只包含一个脚本一次。该控件可以在一个页面上出现多次,但我只希望包含一个jQuery脚本

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-02-01 02:32:57

直接将其注入头部:

代码语言:javascript
复制
HtmlGenericControl Include = new HtmlGenericControl("script"); 
Include.Attributes.Add("type", "text/javascript"); 
Include.Attributes.Add("src", sInclude); 
this.Page.Header.Controls.Add(Include); 

在添加它之前,您可能希望检查以确保它不在那里。

票数 24
EN

Stack Overflow用户

发布于 2011-04-06 12:22:07

嘿,老问题,但也许这对某些人来说还是有兴趣的。

我正在用.net 3.5sp1创建自己的UserControl,遇到了同样的问题。下面的解决方案对我很有效。

这段代码来自UserControl类:

代码语言:javascript
复制
protected void Page_Init( object sender, EventArgs e )
{
    const string scriptKey = "UserControlScript";

    if( !Page.ClientScript.IsClientScriptIncludeRegistered( Page.GetType(), scriptKey ) )
    {
        Page.ClientScript.RegisterClientScriptInclude( Page.GetType(), scriptKey, ResolveClientUrl("~/js/UserControl.js" ) );
    }
}

我使用Page_Init是因为在调用嵌套页面的Page_Load之前,我需要做更多的初始化工作。

票数 3
EN

Stack Overflow用户

发布于 2009-02-01 02:47:19

似乎无法使用Page.ClientScript将脚本添加到页面的页眉。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/500036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档