小编典典

PHP json_encode不返回正确的json编码的字符串

ajax

我正在使用接受json响应的jquery ajax调用:

 var posturl = '/admin/getparamdetails/';
    var data = "adnetworkId="+adnetworkId;
    $.ajax({
        type: "POST",
        url: posturl,
        data : data,
        datatype: "json",
        success: function(msg){
            //$("#displayPramForm").html(msg);
            //alert('hello'+msg.length+' '+msg.hello.length);
            console.log(msg);
            if(msg!='')
            {
                alert(msg.hello);
            }
        },
        failure: function(msg){}
    });

在我的php后端函数中,我在一个简单的数组上使用json_encode,如下所示:

 $json_encoded_string =  json_encode(array("hello"=>'abc'));
 echo $json_encoded_string;
 die;

但是 alert(msg.hello) 为我返回 未定义 。这是怎么了?另外,在我的 console.log中,
我能够得到如下输出:

{"hello":"abc"}

阅读 505

收藏
2020-07-26

共1个答案

小编典典

使用parseJSON的返回数据:

if (msg) {
  msg = $.parseJSON(msg);
  alert(msg.hello);
}
2020-07-26