从json字符串中提取数据元素

时间:2016-02-26 18:50:36

标签: javascript php ajax

我在我的服务器上的php脚本中使用以下脚本;

$.ajax({
            type: 'POST',
            url: 'http://xx.php',
            data: { anyNumber: val1 },
            success: function(data) {
                alert(data);
            }
});

php脚本正确查询sqlsrv数据库并返回我编码的数据行 echo json_encode($ rows); 然后我正确地将json字符串接收到数据中(如上例所示) 当我用alert(data);显示数据时,我得到以下内容:

"({\"id\":1,\"Username\":null,\"Category\":null,\"VIN\":null,\"Make\":null,\"Model\":null,\"Colour\":null,\"Registration\":\"12345     \",\"RegisterNumber\":null,\"EngineNo\":null,\"Branding\":null,\"Remarks\":null,\"Photo1\":null})"

我尝试过各种方法但不能将各种元素分配给变量。 请帮忙

1 个答案:

答案 0 :(得分:1)

只需将dataType来电的$.ajax设置为json

$.ajax({
        type: 'POST',
        url: 'http://xx.php',
        dataType: 'json',
        data: { anyNumber: val1 },
        success: function(data) {
            alert(data);
        }
});

说明:在使用GETPOST投放数据时,很多字符都会被屏蔽。我认为您的$.ajax来电并不期望JSON作为答案,而是文字或HTML。这就是为什么它没有正确读取JSON字符串并保持字符的屏蔽。