【问题标题】:Javascript not triggered未触发 Javascript
【发布时间】:2020-10-23 03:51:20
【问题描述】:

我想在点击类 subcat-tab 时触发 js 功能,但似乎不起作用。我没有任何错误消息,但什么也没发生。

我在 Magento 2 的 phtml 文件下。

<a href="#subcat_<?= $subcatId ?>" class="subcat-tab" title="<?= $subcat['label'] ?>" data-categoryid="<?= $subcatId ?>">

<script type="text/javascript">
    define([
        'jquery'
    ], function ($) {
        console.log("ok");
        $('.subcat-tab').click(function (e) {
            console.log(e);
        }
    });
</script>

【问题讨论】:

    标签: javascript php jquery magento magento2


    【解决方案1】:

    使用require 而不是define 以某种方式修复它,但不知道为什么。

    【讨论】:

      【解决方案2】:

      在模板文件中初始化 javascript 时,使用 require 是正确的方法。 define 用于 web/js 文件夹中的 javascript 文件。

      【讨论】:

        【解决方案3】:

        试试这个

        将 "$('.subcat-tab').click(function (e) {" 替换为 "$('.subcat-tab').on('click',function(e){"

        <script type="text/javascript">
            define([
                'jquery'
            ], function ($) {
                console.log("ok");
                $('.subcat-tab').on('click',function(e){
                    console.log(e);
                }
            });
        </script>
        

        【讨论】:

        • 实际上我的问题是我使用的是define而不是require。
        猜你喜欢
        • 2013-08-07
        • 2014-08-09
        • 2021-05-26
        • 1970-01-01
        • 1970-01-01
        • 2013-12-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多