如何在共享的用户控件中设置相对路径
How do I set my relative path in a user controll that is shared
我有以下解决方案结构。
- 内阁(文件夹)
- cabinet.aspx
- 图像(文件夹)
- 脚本(文件夹)
- folder1
- menu.js
- 用户控件(文件夹)
- menu.ascx
- default . aspx
在userControl里面我有menu.ascx
(userControl)。
在menu.ascx
中,我引用了几个.js文件。例如:
<script src="./script/folder1/menu.js"></script>
当我查看调用menu.ascx
的default.aspx
时,它工作正常。
然而,当我在橱柜文件夹看橱柜。aspx (cabinet'cabinet.aspx
)也调用menu.ascx
<%@ Register Src="../userControl/menu.ascx" TagName="menu" TagPrefix="uc2" %>
菜单代码在源代码中,但menu.js
文件是404
http://localhost/cabinet/script/menu-files/menu.js
看起来需要往外走。我希望它是:
http://localhost/script/menu/menu.js
我需要做些什么来完成这个?
两种方法之一:
-
通过"/script/folder1/menu.js"将脚本引用锚定到站点根目录(注意它是如何以正斜杠开头的)。例如:
<script src="/script/folder1/menu.js"></script>
。这表示查看站点的根目录,并从那里继续。 -
有脚本标签runat="server",并通过"~/script/folder1/menu.js"(注意"~/"开始)将其根到应用程序根目录。例如
<script runat="server" src="~/script/folder1/menu.js"></script>
。这决定了站点的根服务器端,并相应地生成正确的路径。
在所有情况下,除了当你的开发环境不允许(我显示我的年龄回到WinXP开发),或者你正在配置一个应用程序,将生活在一个虚拟应用程序子目录在你的网站,去第一个选项。
我发现这个问题是Visual Studio Web Instance被触发的,而且需要在IIS上设置头文件以允许代码工作。
所以基本上我安装了IIS 7.5并创建了一个站点,现在我只是附加到这个进程来做我的调试。
一旦IIS设置正确,代码中的路径就可以工作了。
- 如何确定相对较新版本的IE的高度和宽度(IE8不喜欢从JavaScript设置这种样式吗?
- Angular sqlLite set css url()无法设置相对路径
- 在相对于用户当前 URL 路径的不同路径中设置 Cookie
- 设置相对于宽度的高度
- PhantomJs:我可以从具有动态设置内容的页面访问相对资产吗
- 如何设置正文相对于屏幕大小的字体大小
- RequireJS 不遵循设置了 baseUrl 的数据主的相对路径
- 在 envjs 中设置相对 window.location.href
- 如何设置一个相对于自身高度而非宽度的响应比例图像
- 当设置锚的href属性时,相对URL变为绝对URL
- 如何在共享的用户控件中设置相对路径
- 将js文件中的相对链接设置为来自文件源而不是域
- 正确设置Ajax相对URL
- 在Javascript中使用相对路径设置谷歌地图图标
- 在AngularJS中为all $https调用设置相对路径
- 设置相对于高度的过渡速度
- bootstrap datetimepicker -设置maxDate相对于现在
- 设置jQuery元素相对于父元素的偏移量
- 以 momentJs 格式设置相对时间
- 如何设置一个背景颜色相对于附近的jquery