[英]How to get json data in AJAX success function
我有一个AJAX电话:
$.ajax({
type : "POST",
dataType : 'JSON',
url : "../hotelroomtype",
data : form_data,
success : function(data){
var datas = $.parseJSON(data);
alert(datas['categorys'].categorytype0)
// var returnedData = $.parseJSON(data);
// alert(returnedData);
// $('.x').html(returnedData);
//
// for(i=1;i<oldSeason;i++){
// $('#roomcategory'+i).html(data.categorytype+i);
// }
}
});
服务器将以下JSON数据返回给我的js
[{"categorytype0":"<div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div>"},{"categorytype1":"<div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div><div class='panel-body'>adfdfs<\/div>"}]
当我检查警报时,它仅显示[object object]
。 问题出在哪儿?
编辑:AJAX调用:
$.ajax({
type : "POST",
url : "../hotelroomtype",
data : form_data,
success : function(data){
dataType : 'JSON',
for(i=1;i<oldSeason;i++){
$('#roomcategory'+i).html(data.categorytype+i);
}
}
});
在这里我得到了结果,但没有以正确的方式。我需要明智的类别类型的结果。 但是它在数组中..我不能分开得到它
这是我的json通话
$data = array();
for($i=0;$i<$cnt;$i++)
{
array_push($data, array('categorytype'.$i.'' =>$roomtype));
}
echo json_encode($data, JSON_UNESCAPED_SLASHES);
尝试更换
警报(数据['categorys']。categorytype0)
与
警报(datas.categorytype0)
我认为您不需要使用parseJSON函数,因为您正在使用Javascript,因此数据已经是一个JSON对象。
您可以直接访问每个对象,例如: data[x]
。 然后,您可以访问关联数组lika的每个属性。
您已将dataType设置为'json',因此该参数应该已经是json对象。
另外,您的json是一个包含单个对象的数组。 它没有名为“ categorys”的元素。
我建议使用console.log
而不是使用alert
。 这将以更有用的格式向您显示控制台中的整个对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.