如何在代码背后的某些条件下禁用整个页面?

时间:2013-02-25 12:36:49

标签: c# javascript jquery asp.net ajax

我有一个特定页面,我希望在按钮点击事件中并在某些条件下禁用所有控件和grayout整个页面,显示一条信息消息,说明确认已完成。


如何以一般方式做到这一点?

5 个答案:

答案 0 :(得分:1)

你基本上想要一个面具。虽然不完全是你的问题,看看这个基于jQuery的加载掩码插件,你应该能够根据你的需要进行调整:

https://code.google.com/p/jquery-loadmask/

答案 1 :(得分:1)

查看Ajax Control Toolkit中包含的模式弹出窗口:

http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/ModalPopup/ModalPopup.aspx

这将允许弹出一条有效阻止与页面其余部分交互的消息。

答案 2 :(得分:1)

$(document).ready(function() {
if(Conditions satisfy){
    $('#div_controls').attr('disabled', true);
    $('#div_status').attr('disabled', false);}
else{ $('#div_controls').attr('disabled', false);
    $('#div_status').attr('disabled', True)
}

});

In HTML 

<div id="div_status"> Your Message with your styles </div>
<div id="div_controls"> Your Controls inside this Div </div>

没有任何回复,要丢失数据,可以说明状态。

或查看此演示

http://www.zurb.com/playground/reveal-modal-plugin

答案 3 :(得分:0)

用户单击

后,您可以使所有控件“不可见”
   foreach (Control c in Page.Controls)
        c.Visible = false;

或者更好的方法是使用Modal-UpdateProgress

等插件

答案 4 :(得分:0)

HTML中的

<div id="layer"></div>
<div id="container">

   ----
   ----
   ----

</div>

和CSS

#layer{
    background: none repeat scroll 0 0 white;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100000;
}

这将禁用页面(或者它将像禁用一样)。