2010-01-28 56 views

回答

4

的onclick = “this.enabled =假” 从后面的代码到您的控制

btnAdd.Attributes.Add添加此( “点击”, “this.enabled =假;”);

此链接详细解释了http://encosia.com/2007/04/17/disable-a-button-control-during-postback/

+0

如果你的意思是mybutton.onlick =“this.enabled =假”再有就是给它定义点击数方法。 – stckvrflw 2010-01-28 09:58:06

+0

这将是客户端事件发射按钮被按下后,如果您想从服务器端禁用它很容易btnAdd.Enabled = FALSE; – Ravia 2010-01-28 10:00:30

0

我会用一个UpdatePanel角落找寻按钮。点击可以在服务器上禁用按钮。如果您的外部进程已返回结果,则在每隔x秒查看一次的updatepanel上使用触发器。我建议您将长时间运行的进程编入Windows服务。

2

如果您是通过Ajax时处理开始 2.启用按钮处理完成

如果按钮回发,最好的办法是禁用后处理当按钮clicked- 1.禁用按钮按钮,当它通过JavaScript点击[我不会建议jquery只为这个特定的任务]。由于回发之后按钮将像以前一样启用,因此您无需担心启用。

<asp:Button ID="btn" runat="server" OnClientClick="disable(this)" 
Text="Click me!" OnClick="btn_Click" /> 

<script type="text/javascript"> 
     function disable(control) 
     { 
      control.disabled="disabled"; 
      //added alert to give the snapshot of what happens 
      //when the button is clicked 
      alert(100); 
     } 
</script> 

希望这会有所帮助。

+0

并将其重新如何回传结束后使自己? – stckvrflw 2010-01-28 13:16:53

+1

我写我的代码类似于你的。一切都是一样的,但现在OnClick =“btn_Click”没有开火。如果我删除OnClientClick =“禁用(this)”,那么OnClick会触发。你怎么看 ? – stckvrflw 2010-01-28 13:54:36

+0

回传后,您可以在C#中,去除该按钮的disabled属性clientscript注册的脚本。 – sangam 2011-08-26 07:55:14