使用 ajax 调用 prestashop 模块 [英] Call a prestashop module with ajax

查看:49
本文介绍了使用 ajax 调用 prestashop 模块的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个名为MyMenu"的 PrestaShop 模块,我想通过 AJAX 调用调用此菜单.我的模块显示在 hookFooter() 方法中:

公共函数hookFooter(){$display = $this->display(__FILE__, 'megamenu.tpl', $smartyCacheId);工具::restoreCacheSettings();返回 $display;}

我想用这个脚本显示:

<脚本>$(document).ready(function (e) {$.ajax({方法:POST",url: "../modules/MyMenu.php",数据: {},成功:功能(数据){$('.load_menu').html(data);}})});

解决方案

在模块根目录下新建一个文件,可以新建一个文件ajax.php"

require_once(MODULE_DIR.'MyMenu/mymenu.php');if(Tools::getValue('token') !=$mymenu = Module::getInstanceByName('mymenu');$menu = $mymenu->hookFooter();死($菜单);

在你的js中,在你模块的根目录

I have a PrestaShop module called 'MyMenu' and I want call this menu with an AJAX call. My module is displayed in the hookFooter() method:

public function hookFooter()
{
    $display = $this->display(__FILE__, 'megamenu.tpl', $smartyCacheId);
    Tools::restoreCacheSettings();
    return  $display;
}

I want display with this script:

<div class="load_menu"></div>
<script>
    $(document).ready(function (e) {
        $.ajax({
            method: "POST",
            url: "../modules/MyMenu.php",
            data: {},
            success: function (data) {
                $('.load_menu').html(data);
            }
        })
    });
</script>

解决方案

In a new file at the module root, you can create a file "ajax.php"

require_once(MODULE_DIR.'MyMenu/mymenu.php');
if(Tools::getValue('token') !=
$mymenu = Module::getInstanceByName('mymenu');
$menu = $mymenu->hookFooter();
die($menu);

In your js, at the root of your module

<script>
$(document).ready(function (e) {
    $.ajax({
        method: "POST",
        url: "./ajax.php",
        data: {},
        success: function (data) {
            $('.load_menu').html(data);
        }
    })
});
</script>

这篇关于使用 ajax 调用 prestashop 模块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆