【发布时间】:2015-05-08 16:07:16
【问题描述】:
我遇到了一个相当奇怪的问题,即 IE (IE11) 无法保存从 GET 返回的变量,它是一个特定变量。对象中返回的其他变量是有效数据,并且在 IE 中不起作用的一个变量在其他浏览器中也可以正常工作。
下面是我的实际代码示例和结果。
$.get("myPHPscript.php", function( data ) {
// Parse result
obj = jQuery.parseJSON(data);
jobs = obj.jobs;
// Loop through object
for(var key in jobs)
{
name = jobs[key].name; // Valid data in all 3 browers
console.log("Name: " + name);
id = jobs[key].id; // Valid data in all 3 browers
console.log("ID: " + id);
status = jobs[key].status; // Valid data in Firefox, Chrome but EMPTY in IE.
console.log("Status: " + status);
}
});
这是我从浏览器网络检查功能获得的 GET 调用中返回的数据示例。这在所有 3 个浏览器中都是相同的。
{
"jobs":[
{
"id":"4142",
"name":"Test",
"status":"closed"
},
{
"id":"4143",
"name":"testtttttt",
"status":"open"
},
{
"id":"4144",
"name":"Test job subclient",
"status":"open"
}
]
}
这是使用上述代码的浏览器的结果图片。
注意:如果我将 obj 保存到全局变量并尝试在 IE 控制台中访问状态,它会返回有效数据。
【问题讨论】:
标签: javascript jquery internet-explorer internet-explorer-11 http-method