jQuery $ .ajax POST功能进入WPSC

时间:2012-12-30 02:11:10

标签: php jquery ajax post

我正在使用Wordpress购物车。我想根据价格相同的3种变化来附加或修改产品名称。 我试图在单个产品页面中使用AJAX $ .post方法在点击事件上实现一个简单的Jquery。即使我用JSON编码它也不会发送数据值。我必须说我是JSON和PHP的新手。提前谢谢!

在单一商品页面

$(function() {
$('#div_img_link').click(function() { 
    $.ajax({
    type: 'POST',
    data: "test value",
 // dataType : "json",
    url: '../wpsc-cart_widget.php',
    cache:false
    });
  });
 });

在wpsc-cart_widget.php中

 $name=wpsc_cart_item_name();

if (isset($_POST['data'])){
$value1 = $_POST['data'];  
  }else{
  $value1 = "";
}

 echo "$name $value1";

我知道那里有一些类似的帖子我读过它们都无法搞清楚。我想知道WPSC是否可以在不刷新页面的情况下执行jQuery POST功能。任何帮助将不胜感激!!

schematics

修改

图表2 - 更简洁!

What I'm trying to accomplish

1 个答案:

答案 0 :(得分:0)

SEA,你缺少一个处理从服务器返回的响应的函数。

我希望看到类似的东西:

$(function() {
    $('#div_img_link').click(function() { 
        $.ajax({
            url: '../wpsc-cart_widget.php',
            type: 'POST',
            data: "test value",
            dataType : "JSON",
            cache:false,
            success: function(data) {
                //do something here with the data.
                //eg.
                alert(data);
            },
            error: function() {
                //do something here if an error occurs.
                //eg.
                alert("an error occurred");
            },
        });
    });
});

了解有关ajax的更多信息的最佳地点是the ajax() page in the jQuery API documentation

您还需要确保服务器响应和客户端期望是兼容的。客户端期望为dataType: "JSON"时,您必须确保服务器返回json-encoded响应。 Json编码仅对单个响应中的多个数据是必需的。可以以未编码的形式发送单个数据项。

编辑:

看到你的原理图2之后,我认为你的ajax请求数据看起来应该是这样的:

data: {
    'pid': '12345678',
    'quantity': '1'
),

其中pid是“产品ID”,quantity是用户想要添加到其购物篮中的产品数量。

但是,WPSC文档肯定包含了这些内容的例子吗?你不应该为自己解决这个问题。