asp.net – 如何知道一个javascript文件是否已被包含在顶级页面中?
|
我有一个用户控件(ascx),在这个用户控件我想使用一个.js文件. 所以我包括在它的顶部. 另一方面,有时我在网页上使用此用户控件,此脚本之前已经加载了该脚本. 如果该页面不包含此脚本的另一个标签,我该如何进行声明并使之成为实际? 解决方法当您使用asp.net时,执行检查服务器端是有意义的,因为您将选择添加对 javascript文件的引用.您可以从.ascx文件中注册以下内容:this.Page.ClientScript.RegisterClientScriptInclude("GlobalUnqiueKey",UrlOfJavascriptFile);
…从您的页面直接调用ClientScript对象: ClientScript.RegisterClientScriptInclude("GlobalUnqiueKey",UrlOfJavascriptFile);
‘GlobalUniqueKey’可以是任何字符串(我也使用javascript文件的url) 如果您尝试使用相同的键字符串注册脚本,则不会执行任何操作.所以如果你在你的页面,你的控件或其他任何地方这样称呼,那么你的页面中只会有一个引用.这样做的好处是,您可以在页面上拥有多个控件实例,尽管它们都尝试注册同一个脚本,但最多只能做一次.而且没有人担心脚本已经被注册了. 有一个’IsClientScriptIncludeRegistered(stringkey)’方法可以用来查看脚本是否已经被包含在该键内,但是在注册之前进行这种检查似乎很多余,注册时不要抛出异常或导致其他任何异常错误. 检查客户端意味着,假设浏览器缓存多个JavaScript引用(可能不是),您仍然有多个标签,并且每个标签的头部导致一些JavaScript运行.如果您在一个页面上有20个控件实例,您可能会遇到严重问题. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – UpdatePanel似乎重新编码页面标题中的字符?
- MVC 5应用程序 – 实现OAuth授权代码流程
- asp.net-mvc – 将DropDownListFor绑定到字典
- asp.net – IIS HTTP错误403.1 – 禁止访问:拒绝执行访问
- asp.net – MVC [HandleError] HandleErrorAttribute在使用
- IIS会话超时与ASP.NET会话超时
- 是否可以在IIS中禁用ASP.NET网站睡眠?
- iis – w3wp.exe占用内存
- 在ASP.NET WebForms中使用jQuery调用’WebMethod’
- asp.net – jqgrid第1页的x pager
- asp.net-mvc – MVC 5 OWIN登录声明和Antiforger
- asp.net – 禁止从网页复制数据
- .net – ApiController与ODataController在露出D
- asp.net-mvc – 为什么Hangfire需要身份验证才能
- asp.net全局资源错误’找不到具有键”的资源对象
- asp.net-mvc-4 – 重定向到动作,参数在mvc中始终
- asp.net-mvc – 避免“类或CssClass值未定义”AS
- asp.net-mvc – ASP.NET MVC提醒我旧的经典ASP意
- asp.net – 在实体框架中使用PersianCalendar作为
- asp.net – Repeater中DropDownList的SelectedVa
