如何让JQuery-UI与ASP.NET MVC6一起使用?

我刚刚开始使用MVC6(RC),已经基于MVC6 RC的标准模板创建了一个项目,并且拼命地尝试使JQuery-UI工作。 我在我的一个视图中从JQuery-UI页面中取代了以下示例:

 $(function() { var availableTags = [ "ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++", "Clojure", "COBOL", "ColdFusion", "Erlang", "Fortran", "Groovy", "Haskell", "Java", "JavaScript", "Lisp", "Perl", "PHP", "Python", "Ruby", "Scala", "Scheme"]; $("#tags").autocomplete({ source: availableTags }); });  

显示标签(和“TextBox”),但自动完成function不起作用(如果我输入某些文本,则没有任何反应)。 默认情况下安装JQuery(base)(在标准模板中)。 首先,我添加了JQuery-UI NuGet包(似乎是错误的)。 然后我在Bower中添加了JQuery-UI包(我认为应该是新的方式)。

我也尝试添加引用:

      

在我看来(什么不解决问题)。

MVC 6(RC)项目中添加JQuery-UI并使示例正常工作的正确方法是什么? 更新为具体:
问题不在于上面的示例代码(没有错误)问题只是引用JQuery正确(在我的情况下为MVC6 RC)。
因此,您可以在第一个答案中看到解决方案,特别是针对我的案例 – 在我自己的答案中。

此代码应与您提供的信息一起使用。 看到工作小提琴 。

一定要仔细检查所有这些事情

1)您已经加载了jQuery,jQuery UI和所需的relvant CSS。 应该在加载jQuery UI之前加载jQuery,因为它依赖于jQuery。

启用自动完成的脚本应该在加载上述2个库之后。

2)在浏览器控制台中检查其他脚本错误。 如果你有一些脚本错误,你的其他剩余的js代码将不会被执行:)

3)如果您正在使用布局并且您尝试从使用此布局的页面启用自动完成插件,请确保将您的脚本放在@section scripts块中,以便在我们加载库之后执行它( 即如何我们将/应该在Layout文件中指定脚本执行顺序。参见下面的例子

布局(_Layout.cshtml

     @RenderSection("scripts", required: false)  

您的特定页面(例如: index.cshtml

 @section scripts {  } 

它现在有效。 在MVC6 RC中 ,必须在_Layout.cshtml中添加脚本,但在环境部分下

      @* Added for JQueryUI (Debug) *@    @* Added for GoogleMaps (debug)*@       @* Added for JQueryUI (Staging / Hosting (including Self-hosting) *@    @* Added for GoogleMaps (Staging / Hosting (including Self-hosting)*@   

所以我发布的示例代码有效,因为我已经改变了。 注意:您还必须在环境名称=“Staging,Production”下添加引用,否则它在VS之外不起作用。