Prestashop AJAX 在 Friendly URL 关闭时无法工作

Prestashop AJAX not work when Friendly URL is off

我正在为 prestashop 开发自定义模块,那里有一些 AJAX 请求。 AJAX 请求在 Friendly URL 开启时工作正常,但关闭时显示 404 错误。 AJAX 请求将发送到控制器文件。

$.ajax({
    url: "{$base_url|escape:'htmlall':'UTF-8'}module/mymodule/ShippingOptions",
    type: 'post',
    data: 'ajax=true&selectDate=' + selectDate ,
    success: function (data) {
    }
});

ShippingOptions 是控制器文件。 如何更改此 URL 以打开和关闭友好的 URL? 这是 prestashop 1.6

谢谢

因为您的 Ajax 请求使用了友好的 url 语法。您应该通过以下方式获得 url:

{$link->getModuleLink('mymodule', 'ShippingOptions')|escape:'html'}

对于 ajax 调用,您可以使用以下代码,无论是否使用友好的 url 都可以正常工作。

$.ajax({
    url: baseUri,
    type: 'post',
    data: {
        ajax       : true,
        selectDate : selectDate,
        module     : 'myModule',
        fc         : 'module',
        controller : 'ShippingOptions'
    },
    success: function (data) {
    }
});