下面我的ajax脚本,从php脚本中获取json_encoded值。 PHP脚本包含单个值和数组。对于单个值,我没有问题,因为我使用第一个循环来循环它们。对于数组值,我不知道如何循环。
据我所知,逗号分隔值可以放入数组中 split(',')。但对于我的情况,它不输出任何东西。哪里是我的 在第二个循环错误?
我的完整剧本:
$("#receipt").on("click",function()
{
var ele = $(".header_tbl tbody tr").children().length;
if(ele !=0)
{
$("#after_cash_cart_form").submit(function(){
var data = {
"action": "test"
};
data = $(this).serialize() + "&" + $.param(data);
$.ajax({
type: "POST",
dataType: "json",
url: "submit_cart.php",
data: data,
success: function(data) {
for(var i=0;i < data.length; i++)
{
//alert(data[i].price.length);//outputs '3'
//data[i].price; //outputs 120,200,150
var array = data[i].price.split(",");
for (var j=0;j < array.length; j++)
{
alert(array[j]);//doesn't output anything
}
}
}
});
return false;
});
}else
{
alert("Your cart is empty.");
}
});
答案 0 :(得分:1)
data[i].price
已经是一个数组,因此您不需要split(",")
。
而不是
var array = data[i].price.split(",");
只需使用
var array = data[i].price;
然后你的其余代码应该可以工作。