str*_*go0 4 javascript asp.net
我们在主页中包含javascript时遇到了一些麻烦."〜/"根快捷方式似乎不起作用,因此我们必须手动输入将使用它的javascript路径,例如:"../../tooltip.js"
但是,问题是如果嵌套页面位于不同的路径中,这种方法不起作用,因为尽管嵌套页面位于不同的位置,路径保持不变 - 任何关于如何使路径自动工作的解决方案都像它一样对于css文件?
谢谢!
它~/是ASP.NET中的一个特殊实体,代表"应用程序根".只有在通过ASP.NET服务器控件传递该URL时才会发生转换,例如<asp:Image runat="server" ImageUrl="~/path..." />.试图将它作为文本文本直接传递给客户端的东西,例如`将在浏览器中完全呈现.
有一些解决方案:
将脚本放在相对于域根目录的可预测位置,例如domain.com/scripts/script.js,您可以将其称为/scripts/script.js.前面/告诉客户端(浏览器)它是域根的绝对路径.
使用Page.ResolveClientUrl呈现正确的路径(<%=Page.ResolveClientUrl("~/script./js")%>)
创建自己的服务器控件来处理~/分辨率.
将脚本嵌入为程序集资源.
Cory Larson 建议:
<script type="text/javascript" src="<%= Page.ResolveClientUrl("~/tooltip.js") %>"></script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16034 次 |
| 最近记录: |