我有一个简单的显示页面,该文件顶部有haml代码:
:javascript
$(document).ready(function() {
alert('Come on work.....');
});
当我加载页面时,我在控制台Uncaught ReferenceError: $ is not defined
问题似乎与此问题相似(Uncaught $ error)。
我的application.js看起来像这样:
#= require jquery
#= require jquery_ujs
#= require jquery-ui
#= require underscore-min
#= require chosen.jquery.min
#= require app
#= require_tree .
#= require twitter/bootstrap
#= require d3.min
#= require highcharts/highstock
#= require highcharts/highcharts-more
#= require highcharts/solid-gauge
#= require tagcloud
#= require ace-element.min
#= require tipso.min
# Remove the following trigger when TurboLinks are re-enabled
$(document).ready ->
$(document).trigger 'page:change'
我可以使用一些帮助,以便我可以继续解决所有其他javascript文件正常工作,所以我不确定问题是什么。
UPDATE我不确定我是否正确理解但我已经尝试将application.js
中的文件重新排序到此处:
#= require_tree .
#= require jquery
#= require jquery_ujs
#= require jquery-ui
我收到一条新错误JQuery is not defined
。我认为在application.js文件中有这个jquery会出现在各处。我在这里想念的是什么我是否需要在show.html.haml
页面中包含实际文件?
答案 0 :(得分:0)
正如@Pointy所说,需要在application.js
之前包含jQuery文件
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="application.js"></script>
答案 1 :(得分:0)
您必须在页面中包含jQuery引用
<script src="https://code.jquery.com/jquery-2.1.4.js"></script>