Javascript 无法在1.10.2/jquery.min.js下执行JSON.parse()
如果应用1.3.2/jquery.min.js而不是1.10.2/jquery.min.js,那么使用JSON.parse解析PHP数组返回是可行的,有人有类似的经验和解决方案吗 PHP数组返回Javascript 无法在1.10.2/jquery.min.js下执行JSON.parse(),javascript,php,jquery,json,Javascript,Php,Jquery,Json,如果应用1.3.2/jquery.min.js而不是1.10.2/jquery.min.js,那么使用JSON.parse解析PHP数组返回是可行的,有人有类似的经验和解决方案吗 PHP数组返回 $returnArray['vercode'] = FALSE; echo json_encode($returnArray); AJAX调用 $.ajax({ cache: false, type: "POST", dataType: "json", data: $(
$returnArray['vercode'] = FALSE;
echo json_encode($returnArray);
AJAX调用
$.ajax({
cache: false,
type: "POST",
dataType: "json",
data: $('#form1').serialize(),
url: $('#form1').attr('action'),
complete: function (HttpRequest, textStatus) {
$obj = JSON.parse("HttpRequest.response");
}
});
首先,解析字符串HttpRequest.response,删除引号。然后,当您将数据类型设置为json时,您不必解析它来获得数组
$.ajax({
cache: false,
type: "POST",
dataType: "json",
data: $('#form1').serialize(),
url: $('#form1').attr('action'),
complete: function (HttpRequest, textStatus) {
$obj = HttpRequest.response;
}});
改用:
$obj = JSON.parse(HttpRequest.response);
$obj = JSON.parse(HttpRequest.responseText);
JSON.parseHttpRequest.response;将给您一个错误,因为您试图解析字符串:HttpRequest.response
另外,您可能不需要使用JSON.parse,因为jQuery已经使用dataType:JSON:
应改为使用:
$obj = JSON.parse(HttpRequest.response);
$obj = JSON.parse(HttpRequest.responseText);
HttpRequest.response与HttpRequest.responseText相同,如果未将数据类型指定为json,则为罚款,但属性不正确为什么要解析解析的数据类型?