有一個鏈接,點擊後,將HTML加載到div和清空div之間切換。當div被點擊加載html時,我使用jQuery ajax load()函數。當文本加載時,我想顯示「Please wait ...」,所以我嘗試使用jQuery ajaxStart()和ajaxStop()方法,但它們似乎只在第一次調用load()函數時起作用。所以我切換到ajaxSend()和ajaxSuccess,但這似乎也只是在第一次調用加載函數時才起作用。怎麼了?爲什麼jQuery的函數只在第一次被調用時才起作用?
HTML:
<p id="toggleDetail" class="link">Toggle Inspection Detail</p>
<p id="wait"></p>
<div id="inspectionDetail"></div>
的jQuery:
$(
function(){
$('#toggleDetail').click(function(){
if($.trim($('#inspectionDetail').text()).length)
{
$('#inspectionDetail').empty();
}
else
{
$('#inspectionDetail').load('srInspectionDetailFiller.cfm');
}
});
}
);
$(
function(){
$('#wait').ajaxSend(function() {
$(this).text('Please wait...');
});
}
);
$(
function(){
$('#wait').ajaxSuccess(function() {
$(this).text('');
});
}
);
雖然我不確定這是我做到這一點的方式,但您的代碼似乎對我很有用:[除了在jsFiddle上僞造Ajax調用以外,沒有任何變化](http://jsfiddle.net/k9rba /)。 – 2011-03-11 16:14:59