net MVC与jQueryUI困境

net MVC与jQueryUI困境,jquery,asp.net-mvc,jquery-ui,path,jquery-ui-theme,Jquery,Asp.net Mvc,Jquery Ui,Path,Jquery Ui Theme,我刚刚将一个项目转移到ASP.netmvc框架的beta版,唯一的问题是jQuery和jQueryUI 交易如下: 在Site.Master中有以下脚本参考: <script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script> <script src="../../Scripts/jquery-ui.js" type="text/javascript"></script

我刚刚将一个项目转移到
ASP.netmvc
框架的beta版,唯一的问题是
jQuery
jQueryUI

交易如下:

Site.Master
中有以下脚本参考:

<script src="../../Scripts/jquery-1.2.6.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-ui.js" type="text/javascript"></script>

使用这些工具,我在其中一个视图上的
手风琴式用户界面
工作得很好,除了一个问题:页面上不包括来自
ThemeRoller
的图像。如果我注释掉jQuery引用,ThemeRoller图像就在那里。所有css都在
内容文件夹
中,所有脚本都在
脚本文件夹

我知道这是一个愚蠢的路径问题,但它让我抽搐

我错过了什么

更新

我尝试了第一个答案,但没有结果,请阅读评论了解详情。再次感谢那些正在观看的人

第二种方法也不起作用。我很困惑

另一次更新

为脚本使用
Url.Content
标记确实允许脚本正常运行。对样式表使用常规标记将所有样式都显示在页面上,但与meroller相关的样式除外

jqueryui themeroller.css
文件在Content文件夹中,当我检查一个元素时,css就出现了。我怀疑问题出在从这个css文件到themeroller的images文件夹的映射中,该文件夹也在Content文件夹中。此文件中指定的图像链接为:
background:url(images/foo.gif)


此文件中的链接是否需要更改

除非所有视图处于同一级别,否则您需要使用

  • 使用绝对路径,如/Scripts/jquery-1.2.6.js
  • 或者更好地解决虚拟路径,例如
这有帮助吗

这种不一致的原因是 很简单,虽然我承认不是 很容易弄明白!当你有一个 标记内,ASP.NET将处理 标记并检测URL和 解决它们相对于 应用程序的根。当你有一个 页面上的标签(不带标签) runat=“server”)则ASP.NET将 别管它,因为它很简单 旧的HTML

使用Url.Content()是我的方法 将用于解决此问题,因为它将 相对于应用程序根目录进行解析, 就像标签一样


您需要更改jquery-ui-themeroller.css中的链接,以指向图像的当前位置

与中一样,您需要更新css文件正在查找的图像的路径

background: url(images/foo.gif)
从路径中删除“images/”,使其看起来像:

background: url(foo.gif)

因为您的css和图像都在内容文件夹中。

我尝试了使用Url.content标记的选项,它改变了一件事:现在所有内容都未注释,图像显示出来,但jQueryUI不起作用。它帮助我更好地理解问题并更近距离,但我仍然无法找到解决方案,问题是从ThemeRoller下载的主题无法开箱即用。谢谢你的解释。
    protected void Page_Load(object sender, EventArgs e)
    {
        Page.ClientScript.RegisterClientScriptInclude(this.GetType(),"JQuery", ResolveUrl("~/js/jquery.min.js"));
        Page.ClientScript.RegisterClientScriptInclude(this.GetType(), "JQueryUI", ResolveUrl("~/js/jquery-ui.custom.min.js"));