我已经阅读了许多关于在Rails中使用jquery的页面,但似乎仍然无法使其正常工作。
我有'jquery-rails'gem,并且已安装。我在application.js文件中有require语句。
这是我一直运行的测试页:
<!DOCTYPE html>
<html>
<head>
<title><%= yield(:title)%></title>
<%= javascript_include_tag 'application','jquery', 'data-turbolinks-track' => true %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>
<script>$(document).ready(function(){
$(".bg-info").click(function(){
$(this).hide();
});
});</script>
</head>
<body>
<center>
<h1 class="bg-info"><%= yield(:title)%></h1>
</center>
</body>
</html>
但是,当我在浏览器中单击“ bg-info”文本时,没有任何响应。
这是您应该拥有的:
#app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require_tree .
$(document).on("click", ".bg-info", function(e){
$(this).hide();
});
这是我要做的布局(测试):
#app/views/layouts/application.html.erb
<!DOCTYPE html>
<html>
<head>
<title><%= yield(:title)%></title>
<%= javascript_include_tag 'application','jquery', 'data-turbolinks-track' => true %>
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= csrf_meta_tags %>
</head>
<body>
<div class="bg-info"><%= yield(:title)%></div>
</body>
</html>
如果上述方法无法解决问题,则您的开发环境(OS)可能会出现问题-最有可能是与。ExecJS
为了证实这一点,你需要调试您的开发者控制台:
要访问开发者控制台,,right-click > inspect element > console
。
这向您显示JS和前端环境的任何错误。如果出现任何错误,它们可能会告诉您问题所在。
如果没有错误出现,则应尝试在系统上安装NodeJS,因为这可以确保Rails可以使用适当的JS可执行文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句