ajax獲取不到數據:
問題描述:
VM379:1 Uncaught SyntaxError: Unexpected end of JSON input at JSON.parse (
原因分析:
1、后端返回json數據格式錯誤
2、后端返回json數據方法不對
解決方案:
PHP:
return json_encode(array( 'status' => 3, 'message' => 'ID不正確' ));
改為:
echo '{"status": 3, "mesg": "ID不正確" }';
注意:JSON字符串 應該用 英文雙引號包裹
問題解決
// ajax function del_cate(id, pid) { if (window.XMLHttpRequest) { var xmrt = new XMLHttpRequest(); } else { var xmrt = new ActiveXObject('Microsoft.XMLHTTP'); } xmrt.onreadystatechange = function () { if (xmrt.readyState == 4 && xmrt.status == 200) { console.log(xmrt); console.log(JSON.parse(xmrt.responseText)); var status = JSON.parse(xmrt.responseText); if (status.status == 1) { alert('刪除成功!'); window.location.href = 'cate.php'; } else if (status.status == 0) { alert('刪除失敗!'); window.location.href = 'cate.php'; } else { alert('刪除失敗!'); window.location.href = 'cate.php'; } } } xmrt.open('DELETE', './del_cate.php?id=' + id + '&pid=' + pid, true); xmrt.send(); }