a.aspx
<asp:UpdatePanel ID="UpdatePanel1" Visible="false" runat="server">
    <ContentTemplate>
       <asp:TextBox ID="MobilEmailTextBox" runat="server"/>
       <asp:Button ID="OrderBtns" runat="server" Text="確認" OnClick="OrderBtns_Click"/>
    </ContentTemplate>
</asp:UpdatePanel>a.cs
protected void OrderBtns_Click(object sender, EventArgs e)
{
    OrderBtns.Enabled = false;//这样设置不能变灰(不可用)
}
希望的功能:点击OrderBtns按钮后,将这个按钮变灰,即不可用状态。使用了如下两个方法都不行
1,在OrderBtns_Click中将Enabled 设置为false。
2,在Page_Load中
  if (!Page.IsPostBack)   
 {  
     OrderBtns.OnClientClick = "this.disabled=true;" + Page.GetPostBackEventReference(OrderBtns);    
  }

解决方案 »

  1.   

    在点击时(提交之前)使用javascript设置。而不是在页面都刷新了之后才设置。
      

  2.   

    实际上想想就能知道,你在服务器端执行的代码,是在页面下载刷新html之后才生效的吧?!如果你还不理解服务器端命令在什么时候生效的、不理解从浏览器端操作直到页面再次刷新的过程周期的机制,请另外找一个入门书再一次开始学习asp.net。