javascript - js 代码在 Rails 中不起作用

标签 javascript ruby-on-rails asset-pipeline turbolinks

我在 application.js 文件中放入了一些 js 代码,但它不起作用...

application.js:

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require_tree .

//...

obj.dd.on('click', function(event){
    $(this).toggleClass('active');
    return false;
});

//...

$(function() {

    var dd = new DropDown( $('#dd') );

    $(document).click(function() {
        // all dropdowns
        $('.wrapper-dropdown-5').removeClass('active');
    });

});

我还激活了initializers/assets.rb 文件中的一行:

 Rails.application.config.assets.precompile += %w( search.js )

但无论如何我的代码无法在 View 中使用。我认为应该没有什么额外的,因为它在 application.js 中。

或者也许应该有其他的东西?

最佳答案

1)您在应用程序布局中提到过这一点吗?

<%= javascript_include_tag 'application', 'data-turbolinks-track' =>  true %>

2) 之后,在 application.js 中使用警报消息

alert('Hello');

关于javascript - js 代码在 Rails 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29616033/

相关文章:

javascript - 如何在yii中的div onclick中加载页面?

javascript - 通过对象数组中的键获取值

ruby-on-rails - Rails - 两个 Controller 或添加 Action ?

ruby-on-rails - 如何在 react-native App 上获取推送通知?

javascript - 将范围传递给 AngularJS 指令

javascript - 动态加载的 CSS 在 Windows 8 应用程序中无效

ruby-on-rails - 在 Capybara 的多个场景中重用 Factory_Girl 生成的列表

javascript - 使用 Rails 3.1 Assets 管道包括外部库

使用 Capybara 测试 Assets 管道

ruby-on-rails - 将 CKEditor 与 Rails 3.1 Asset Pipeline 集成