![](/img/trans.png)
[英]How can I include an external javascript file that contains coldfusion code?
[英]How can I include an external JavaScript file exactly once per partial view?
我有一个局部视图(UserControl),它在Asp.Net MVC项目中实现了一个简单的寻呼机。 无论母页面上有多少个分页控件实例,此分页器都需要访问一次仅需要包含一次的.js文件。
我尝试使用Page.ClientScript.RegisterClientScriptInclude
,但是它没有任何效果(我认为是因为对代码块的评估太迟而无法影响头部控件)。 有没有简单的选择?
将其添加到母版页。
这样您就可以保证仅将其包含一次,并且您不会忘记它。借助现代缓存,在每个页面上包含它的确没有性能损失。
在部分发送脚本时,在HttpContext.Current.Items中设置一个标志-这是一本字典,可以满足整个请求。 例如:
if (!HttpContext.Current.Items.Contains("SentTheScript"))
{
HttpContext.Current.Items["SentTheScript"] = true;
Response.Write(Html.ScriptTag("Script"));
}
这样,它将最多渲染一次。
Page.ClientScript.RegisterClientScriptInclude
与传统的ASP.net一起使用。
由于您使用的是asp.net-mvc,因此只需将js
文件的script
指令添加到使用此用户控件的页面即可。
由于最好的做法是在所有站点上只有一个缩小的CSS文件,因此您可能希望将此文件包括在主要的缩小CSS文件中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.