我有一个页面,用户可以通过单击实体名称来更新表单。考虑一个名称列表,以及包含所有其他字段(地址,年龄,性别等)的表单,使用来自onClick的AJAX进行更新。如何在AJAX调用返回数据之前创建模式对话框("请等待。")以防止用户交互?我不希望用户能够点击" X"或"关闭"按钮。他或她必须等待!
答案 0 :(得分:1)
查看BlockUI插件。
它允许阻止与页面或特定元素的交互,方法是在页面顶部或该元素上添加叠加层。您可以定义一条消息,并附带一系列选项来自定义外观和感觉。
例如,当执行ajax请求时,您可以阻止页面:
$(document).ajaxStart(function() {
$.blockUI({
message: '<h1>Just a moment...</h1>'
});
}
$(document).ajaxStop(function() { $.unblockUI(); }
答案 1 :(得分:0)
var d = document.createElement('div');
d.style.position = "fixed";
d.style.top = d.style.left = d.style.right = d.style.bottom = "0px";
document.body.appendChild(d);
那是基本面具。之后,您可以添加更多内容,例如“请稍候”框。
答案 2 :(得分:0)
您需要在页面的整个内容上放置DIV。通常,这是半透明的,表示用户必须等待。有时在叠加层上有一个“加载”微调器。