我已经看到ajaxStart / ajaxStop总是用于DIV
。请考虑以下事项:
$("#lbl_ajaxInProgress").ajaxStart(function() {
// update labels
$(this).text('Yes');
});
$("#lbl_ajaxInProgress").ajaxStop(function() {
// update labels
$(this).text('No');
});
为什么我们需要将ajaxstart / stop绑定到div
?
我们不能像
$ajaxStart(function() {
// update labels
$(this).text('Yes');
});
$ajaxStop(function() {
// update labels
$(this).text('No');
});
当发出ajax请求时,将调用ajaxStart函数,并在ajax请求完成时调用ajaxStop。请详细说明这一要求。
现在改变位后,它正在这里工作的版本
$("#imgHolder").ajaxStart(function () {
$(document).ajaxStart(function () {
$('div#content').block({
message: '<table><tr><td><img src="../images/ajax-loader.gif" border="0"/></td><td><h3>Processing...</h3></td></tr><table>',
css: { border: '1px solid #a00' }
});
$('#imgHolder').empty();
$("#btnPrint").hide();
});
$("#imgHolder").ajaxStop(function () {
$(document).ajaxStop(function () {
$("#btnPrint").show();
$('div#content').unblock();
});
答案 0 :(得分:0)
也许是一个愚蠢的问题,但是为什么在ajaxStart
调用之前可以使用ajaxStop
和.ajax(
以及在函数成功或失败时停止(成功,错误)
/* ajaxStart stuff here */
$('div#content').block({
message: '<table><tr><td><img src="../images/ajax-loader.gif" border="0"/></td><td><h3>Processing...</h3></td></tr><table>',
css: { border: '1px solid #a00' }
});
$('#imgHolder').empty();
$("#btnPrint").hide();
/* end start */
$.ajax({
type: "POST",
url: "myAjax.asmx/Sample",
data: dataString,
cache: false,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
$("#btnPrint").show();
$('div#content').unblock();
},
error:function(xhr,err){
$('div#content').fadeOut();
alert("readyState: " + xhr.readyState + "\nstatus: " + xhr.status);
alert("responseText: " + xhr.responseText);
}
});
然后您没有<div>
要求。