【问题标题】:Javascript/Jquery not working in SpreeJavascript/Jquery 在 Spree 中不起作用
【发布时间】:2016-04-06 15:11:56
【问题描述】:

大家好,我有一个使用 spree 的应用程序,我需要实现一些新的 javascript 来创建新的促销规则。不幸的是,无论我把它们放在哪里,我都无法访问任何 js 文件。我什至尝试过覆盖诸如promotions.js 之类的狂欢文件来实现新功能,但它只是没有通过。我尝试将 js 文件放在以下位置:

应用程序/资产/javascript/spree/后端

供应商/资产/javascript/spree/后端

在我的部分 _product_value.html.erb 中:

<button class='cool'>okay</button>

在promotions.js中

$('.cool').click(function(event) {
    event.preventDefault()
    alert('donezo');
});

【问题讨论】:

  • 您在控制台中看到的错误是什么?
  • 没有错误,我只是在寻找单击按钮时要显示的警报('donezo'),但没有任何反应。
  • 请确认您的所有 js 文件是否正在加载。如果您使用的是 chrome,则 F12(将打开开发人员工具)-> 网络选项卡(重新加载应用程序)-> 您将查看文件是否已成功加载。使用过滤器图标按文件名搜索
  • @user2181397 正在加载中。

标签: javascript jquery ruby-on-rails spree


【解决方案1】:

好的!我想到了。我把它包裹在一个准备好的文件上......

 $(document).ready(function () {

    $('.cool').on('click', function() {
       alert('donezo');
    });

    $("#ight").click(function() {
       alert('worked');
    });
 });

将promotions.js 放入app/assets/javascripts/backend 并在同一目录中创建一个新的all.js 文件。然后我添加了..

 //= require spree/backend/promotions.js

下面 //= require_tree 。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 2012-09-12
    • 2012-09-09
    • 1970-01-01
    • 1970-01-01
    • 2012-07-26
    • 1970-01-01
    相关资源
    最近更新 更多