我使用这个 js 为我的网页的所有页面显示一个“请稍候”弹出窗口“我将它包含在标题中”,它工作正常,并在每次 ajax 调用时显示弹出窗口,并在完成后隐藏。
$('#loadingDiv')
.hide() // hide it initially
.ajaxStart(function() {$('#loadingDiv').dialog({ resizable: false }).show();$(".ui-dialog-titlebar").hide();})
.ajaxStop(function() {$('#loadingDiv').dialog("close");});
问题出现在使用 jquery 自动完成插件的页面中,因为它会干扰自动完成并且 ac 不再显示其下拉列表 我的自动完成 JS
$('input.completeme').each(function() {
$(this).autocomplete({
source: function(request, response) {
$.ajax({ url: '<?=base_url()?>booking/ac',
data: { 'term': this.term,'name': this.element.attr('name') },
dataType: "json",
type: "POST",
success: function(data){
response(data);
}
});
},
select: function(event, ui){
$("#pt_name").val(ui.item.name);
$("#pt_id").val(ui.item.id);
$("#pt_dob").val(ui.item.dob);
},
minLength: 2
});
});
我认为因为自动完成也使用 .ajaxStop,所以有没有办法解决这个问题?
我真的很喜欢这个函数,因为它绑定到所有 ajax 调用,我将它包含在我的标题中,不再担心请等待弹出窗口。但它看起来像自动完成讨厌它:(