我正在尝试从 JSON 检索数据。我已经写了这段代码。它会提醒“1”,但不会提醒“2”。
<script type="text/javascript" src="jquery-migrate-1.2.1.min.js"></script>
<script type="text/javascript">
function ajax_get() {
var results = document.getElementByI("results");
var hr = new XMLHttpRequest();
hr.open("GET", "mylist.json", true);
hr.responseType = "JSON";
hr.setRequestHeader("Content-type", "application/json",true);
hr.onreadystatechange = function() {
if (hr.readyState == 4 && hr.status == 200) {
alert('1');
var data = JSON.parse(hr.response);
alert('2');
alert(data);
results.innerHTML = data.name;
}
}
hr.send(null);
results.innerHTML = "request ...";
}
</script>
</head>
<body>
<div id="results"></div>
<script type="text/javascript">ajax_get();</script>
</body>
最佳答案
您已在此行将响应类型设置为 json。
hr.responseType= "JSON";
所以你不需要再次解析响应。默认情况下它是 json。 确保您的响应采用 json 格式,并像这样更改您的代码。
var data = hr.response;
关于javascript - JSON.parse(hr.response) 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26653308/