2012-02-13 88 views
10

Rails修复:确保<%= javascript_include_tag "application" %>在任何脚本加载之前,以便jquery首先被加载。如何解决jQuery库中未定义'jQuery'的错误?

这看起来很奇怪。当我加载我的页面时,我得到2个js错误(在Chrome中):

jquery-ui.min.js:17 Uncaught ReferenceError: jQuery is not defined 
jquery.blockUI.js:499 Uncaught ReferenceError: jQuery is not defined 

好的,这似乎...奇怪。所以我看看我的脚本包括。我的第一个两个脚本包含在我的页面上:

<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js"></script> 
    <script src="http://bainternet-js-cdn.googlecode.com/svn/trunk/js/jQuery%20BlockUI%20Plugin/2.39/jquery.blockUI.js"></script> 

所以第一个包含得到一个与自身相关的JavaScript错误?这似乎不太可能。这看起来像是一个错误的错误(真正的错误是在别的地方)。我能做些什么来解决这个问题?页面上的JS错误看起来有点不专业(至少对其他开发者来说)。有一天我没有收到这个错误 - 甚至还原了代码以确保。

+4

哪里是jQuery的本身脚本标签? – 2012-02-13 19:28:46

+3

在使用jQuery UI之前,您必须包含jQuery。 – Mihai 2012-02-13 19:28:53

+2

'jQuery!== jQuery UI',你也必须包含“base”jQuery。 – 2012-02-13 19:28:59

回答

22

<script type="text/javascript" src="jquery.js"></script> 

前jQuery UI的< script>标记被调用。

应该出现这样的:

<script type="text/javascript" src="jquery.js"></script> <-- put me here --> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js"></script> 
<script src="http://bainternet-js-cdn.googlecode.com/svn/trunk/js/jQuery%20BlockUI%20Plugin/2.39/jquery.blockUI.js"></script> 
+0

任何在Rails中都有这个问题的人都应该确定,并且看看我编辑的问题有一个Rails特定的修补程序。 – jcollum 2015-10-12 17:36:20

1

默认情况下,jQuery UI不包含标准的jQuery库。在包含使用它的任何插件之前,您需要添加一个<script>标签以包含标准jQuery库。需要

相关问题