【问题标题】:Are JavaScript events triggered during the onepage checkout of Magento?在 Magento 的单页结帐期间是否触发了 JavaScript 事件?
【发布时间】:2015-11-05 10:22:27
【问题描述】:

我需要运行一些 JavaScript 来在 Magento 商店结账时操作一些字段(自动选择送货选项)。因为 onepage checkout 手风琴的每个阶段都是动态加载的,所以我无法在页面加载时执行此操作,而是需要在到达手风琴的相关阶段时执行此操作。

为了实现这一点,我可以连接一个 JavaScript 事件吗?我希望在下一步开始加载然后完成加载时触发一个事件,但我找不到任何文档。

这样的事情是否存在,还是我需要找到解决方法?

【问题讨论】:

  • 我不久前试图实现类似的东西,但我找不到任何东西。我最终做的是复制我的主题皮肤文件夹中的 opcheckout.js 文件并更改该文件。
  • @SamuelComan - 是的,我已经通过覆盖现有方法来执行正常功能以及我自己的方法来做到这一点。不过,这不是一个非常干净的方法,因为适用于此功能的任何主题更新都不会生效。根据我的研究,没有触发 JS 事件,我认为这是一个疏忽。

标签: javascript jquery magento prototypejs


【解决方案1】:

有一个解决方案,但是有点脏。 您可以通过这种方式“覆盖” Checkout.prototype.gotoSection :

<script type="text/javascript">

    // Make ref to default function
    Checkout.prototype.baseGotoSection = Checkout.prototype.gotoSection;

    // "Rewrite" function
    Checkout.prototype.gotoSection = function(section, reloadProgressBlock){

        // <your code>

        // call default function
        return this.baseGotoSection(section, reloadProgressBlock);
    };

</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-01
    • 2016-04-28
    • 1970-01-01
    • 2013-03-09
    • 1970-01-01
    • 2013-12-19
    • 2020-01-10
    相关资源
    最近更新 更多