我正在尝试使用基于jquery构建的现有下拉菜单。我有一个设置身份验证所必需的文件夹结构。还有一个主页面,它位于一个或多个文件夹目录所需的根目录中:与此类似:
Project
Scripts_Folder
Jquery.js
Jcustom.js
Authenticated_Stuff_Folder
A_Page.aspx
A_Nother_Page.aspx
About.aspx
site.master
我尝试在site.master上设置jquery就像这样(在头部之后)
<script src="Scripts_Folder /jquery.js" type="text/javascript"></script>
<script src="Scripts_Folder /jcustom.js" type="text/javascript"></script>
但是当我点击指向A_Page.aspx的菜单结构容器时,它表示JQuery没有定义 所以我改为
<script type="text/javascript" src="<%= Page.ResolveClientUrl("~/Scripts_Folder /jquery.js") %>"></script>
<script type="text/javascript" src="<%= Page.ResolveClientUrl("~/Scripts_Folder /jcustom.js") %>"></script>
现在它有效......但只有一次。如果我点击A_Page,aspx容器,它将转到该页面。如果我现在单击A_Nother_Page.aspx的容器,它将显示Htpp 404,路径方式将显示:localhost:port / Project / Authenticated_Stuff_Folder / Authenticated_Stuff_Folder / A_Nother_Page.aspx(目录路径有TWICE ..
任何想法?
仍然没有取得任何进展..我也尝试了另一个第三方下拉菜单,它有完全相同的问题。当然这是一个已在某处解决的问题?因为很难完全避免网站中的目录。任何人都可以轻松地重现这个问题。创建一个新的ASP网站(我使用visual studio 2010)和一个文件夹到项目的根目录,在其中创建一个新的aspx页面。下载其中一个开源下拉列表(我尝试过Superfish和UvumiTools)并将其合并。将菜单中的一个元素指向您创建的文件夹中的页面。嘿Presto下拉菜单不适用于文件夹/目录!太令人沮丧..
答案 0 :(得分:0)
ResolveClientUrl
创建相对于当前页面的URL。尝试使用ResolveUrl
创建相对于根的URL。
答案 1 :(得分:0)
可以这样做:
<script type="text/javascript" src="<%= Url.Content("~/Scripts_Folder /jquery.js") %>"></script>
答案 2 :(得分:0)
使用Url.Content(“〜/ Scripts_Folder / jquery.js”)
答案 3 :(得分:0)
<script src="Scripts_Folder/jquery.js" type="text/javascript"></script>
<script src="Scripts_Folder/jcustom.js" type="text/javascript"></script>
你可能会得到404,我猜是这样,
检查src
尝试Url.Content("~/Scripts_Folder/jquery.js")
答案 4 :(得分:0)
终于搞定了,这与JQuery无关!对不起,我的基本HTML中的缺点就是这里的问题。在我的li标签中,我认为他们会神奇地能够找出自己的路径,或者神奇地知道如果必要的话可以回到某个级别。大声笑 我将这些更改为显示如下:
<ul>
<li>
<a href="/WebSite/Stuff/DOThis.aspx">menu item 1</a>
</li>
<li>
<a href="/WebSite/Stuff/DOThat.aspx">menu item 2</a>
</li>
</ul>
这解决了这个问题。谢谢大家。