1

我正在使用 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 - 更简洁!

我想要完成的事情

4

1 回答 1

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 的最佳位置是jQuery API 文档中的 ajax() 页面

您还需要确保服务器响应和客户端期望是兼容的。对于客户端的期望dataType: "JSON",您必须确保服务器返回一个json 编码的响应。只有单个响应中的多个数据才需要 Json 编码。单个数据项可以不编码发送。

编辑:

看到您的示意图 2 后,我认为您的 ajax 请求数据应该如下所示:

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

pid“产品 ID”在哪里,是quantity用户想要添加到他/她的购物篮中的产品数量。

但是 WPSC 文档肯定包含这些东西的示例吗?你不应该为自己解决这个问题。

于 2012-12-30T08:06:07.153 回答