使用ajax在prestashop中调用控制器

时间:2015-01-14 10:19:15

标签: javascript php jquery ajax prestashop

如何在控制器中调用方法/功能,我有一个控制器名称TestController.php,然后是Test.tplTest.js。我也很难在网址区域放置什么。

我想使用ajax从控制器获取数据。

public function ajaxProcessTestMyAjax(){
  echo "test";
}

的Javascript

$(document).ready(function(){

 $( ".view" ).click(function(){
    $.ajax({
        url: "",
        data: {
            ajax: true,
            action: "TestMyAjax",
        },
        success: function(output){
            alert(output);
        }           
    });
});

2 个答案:

答案 0 :(得分:1)

希望有所帮助:

$.ajax({
url: 'controller/action',
type: "POST",
datatype: 'json',
data: JSON.stringify({
                val1: "test1",
                val2: "test2"
            }),
success: function (jsonData)

答案 1 :(得分:0)

最重要的是指定控制器参数:

$.ajax({
    type: 'POST',
    headers: { "cache-control": "no-cache" },
    url: baseUri + '?rand=' + new Date().getTime(),
    async: true,
    cache: false,
    dataType : "json",
    data: 'controller=cart&ajax=true&token=' + static_token,
    success: function(jsonData)

您可以将数据指定为字符串或对象(并不重要,但PS的创建者似乎喜欢字符串)。

指定控制器PS时,会自动调用相应的控制器。 controller参数有时可能被称为tab(在旧版本中?)。另一个重要的事情是传递令牌,您可以稍后使用特殊方法检查您的控制器(控制器继承它)。

另一种常见方法是调用文件,并在文件中初始化PrestaShop。然后调用某种模块方法。