这个已经让我走了几个小时了。任何帮助将不胜感激,如果我能提供更多信息,请告诉我。
我试图让一些基本的 jQuery 在我的 Rails 3.2 应用程序中工作。有问题的 jQuery 是在按钮按下时提供一个动作(目前,只是一个警报对话框来知道它正在工作)。
应用程序/视图/订单/index.html.erb
...
<button type="button" class="btn" id="button">My button</button>
...
我已经为 jQuery/JS 代码尝试了许多变体,包括...
应用程序/资产/javascripts/orders.js
$('#button').click(function() {
alert("Test message");
});
.
$(document).ready(function() {
$('#button').click(function() {
alert("Test message");
});
});
.
$(document).ready(function() {
$('#button').button();
$('#button').click(function() {
$(this).button('loading');
});
});
需要注意的几点:
- 这是在开发环境中运行
- JS 文件显示在源代码和 Chrome 网络/资源面板中,没有错误。
- 我尝试重新排序我的 application.js 文件。
- 我还不擅长 CoffeeScript,但愿意尝试基于 CoffeeScript 的解决方案。
- Chrome 在 Morris 中报告错误。
我的app/assets/javascripts/application.js供参考
//= require jquery
//= require jquery_ujs
//= require raphael
//= require morris
//= require bootstrap
//= require_tree .
任何有关追踪此错误的步骤的建议都会非常有帮助!
更新
尝试了以下 CoffeeScript 解决方案,但没有成功。
jQuery ->
jQuery('#button').click ->
alert("Test msg")
// ... which generates ...
(function() {
jQuery(function() {
return jQuery('#jamcake').click(function() {
return alert("You have cake?");
});
});
}).call(this);
尝试将按钮更改为链接,但无济于事。
尝试回到基础,以下工作。
alert("Hello");
但是,以下不...
$(document).ready(function() {
alert("Hello there");
});