从Ajax成功后循环JSON数据


Loop JSON Data after Succes from Ajax

我有一个JSON数据看起来像这样:

{
    "kode_pesanan":"P000000033",
    "lat":"4.454274",
    "lng":"96.152699",
    "sort":0,
    "gambar":"'/status_image'/persiapanbiru.png"
}

这是json_encode:

echo json_encode(
               array(
                    "kode_pesanan"=>$data['kode_pesanan'],
                    "lat"=>$data['lat_antar'],
                    "lng"=>$data['ltd_antar'],
                    "sort"=>$i,
                    "gambar"=>$status
                    )
               );

我已经尝试了for$.each语句,但没有工作。

我错过了什么

试试这个:

var json = {"kode_pesanan":"P000000033","lat":"4.454274","lng":"96.152699","sort":0,"gambar":"'/status_image'/persiapanbiru.png"}
console.log(json);
//json = $.parseJSON(json);
$.each( json , function(e,v) {
	console.log(e,v);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>

$.each( json , function(e,v) => e是键,vjson对象的值

try this

var json = {"kode_pesanan":"P000000033","lat":"4.454274","lng":"96.152699","sort":0,"gambar":"'/status_image'/persiapanbiru.png"};
$.each(json,function(i,val){
console.log(i+' ==> '+val);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>

如果你不想使用jquery,想要在不循环的情况下逐个打印值,那么使用以下方法在JSON中单个数组:

    var json = {"kode_pesanan":"P000000033","lat":"4.454274","lng":"96.152699","sort":0,"gambar":"'/status_image'/persiapanbiru.png"};
   console.log(json.kode_pesanan);

//你可以使用for循环的多维json数组,然后可以打印每一行的值使用json对象

您需要将ajax dataType设置为JSON才能从ajax json response访问json数据

$.ajax({
    url : "ajaxurl", // insert your ajax URL
    dataType : "JSON",
    success : function (d) {
        $.each(d,function(i,v){
            console.log(v);
        });
    }
})