虽然我已经阅读了一些与此相似的帖子,但似乎无法让它发挥作用。我按下按钮时会调用以下Ajax。
function refreshTab(){
theObject = {
getArray: function(callback) {
$.ajax({
url: 'urlGoeshere',
data: "",
type: "GET",
dataType: 'json',
success: function(data)
{
callback.call(this,data);
alert("testing");
},
error: function (err)
{
alert(err.responseText)
}
});
}
}
theObject.getArray(function(data) {
javascript: console.log(data);
for(i=0;i<data.length;i++){
auditHolder = auditHolder + "<tr class='gradeU'><br><td>" + data[i].Description + "</td><td style='width:100px' align='center'>" + data[i].CreatedOn + "</td><br></tr>"
// $('#container tbody').append("<tr class='gradeU'><br><td>" + data[i].Description + "</td><td style='width:100px' align='center'>" + data[i].CreatedOn + "</td><br></tr>");
}
$('#container tbody').html(auditHolder);
});
}
以上代码在Chrome中完美运行,但在FF或IE中均无效。目前正在使用jQuery 1.4.4。
通过警报(“测试”);我发现似乎打破代码的行是
callback.call(this,data);
在所有浏览器中使用警告框之前,但仅在Chrome中,警报框会在回调后触发。
非常感谢您的帮助。
答案 0 :(得分:0)
我刚刚遇到同样的问题,并发现旧版本的Firefox,jQuery和Firebug(!!)的组合成为这个问题的原因。另见: