我正在使用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功能。任何帮助将不胜感激!!
图表2 - 更简洁!
答案 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文档肯定包含了这些内容的例子吗?你不应该为自己解决这个问题。