这似乎是我的MVC 3项目中的ajaxStart工作,但不是ajaxStop或ajaxComplete。问题不在于浏览器的具体情况,因为我在IE9,Mozilla和Chrome中测试了这个问题。MVC 3&JQuery - ajaxStop或ajaxComplete没有射击
我的项目只是采取一系列字母,并找到组合/排列,并显示给用户。 ajax函数被启动,ajaxStart被触发并且出现“please wait”指示符。当ajax调用完成时(我会假设)该表已填充,但ajaxStop/ajaxComplete永远不会被触发,“请稍候”指示符永远不会消失。
这是我使用的JavaScript:
$(document).ready(function() {
$(document).ajaxStart(function() {
$('#ajaxBackground').show();
$('#ajaxProgress').show();
});
$(document).ajaxStop(function() {
$('#ajaxBackground').hide();
$('#ajaxProgress').hide();
});
$('#submit').click(function() {
var p = $('#prefix').val();
var l = $('#letters').val();
var s = $('#suffix').val();
$.ajax({
url: '@Url.Action("Search", "Home")',
type: 'POST',
dataType: 'json',
data: { prefix: p, letters: l, suffix: s },
success: function (jsonresults) {
$('#searchResults').find('tr').remove().end();
for (var i = 0; i <= jsonresults.length; i++) {
$('#searchResults').append('<tr><td>' + jsonresults[i].word + '</td><td>' + jsonresults[i].length + '</td><td>' + jsonresults[i].score + '</td></tr>');
}
},
error: function() {
alert('error');
}
});
});
});
有什么我错过了。任何帮助将不胜感激。谢谢。
这很奇怪。我几乎精确地测试了您的代码,正确调用了ajaxStart和ajaxStop回调。 –
你检查了萤火虫的任何错误 – Rafay