0
我有一個asp.net頁面內容如下。在Panel中有一個HtmlInputText控件,其Enabled =「false」。我在btnSet_Click中設置HtmlInputText控件的Value屬性,然後爲面板設置Enabled = true。回發完成後,HtmlInputText的值將丟失。以下是我嘗試的案例列表:asp.net HtmlInputText在禁用面板內丟失它的價值在回發
- 當我使用asp:TextBox而不是HtmlInputText時,它工作正常。但以上是複雜用戶控件使用的簡化演示。基本上,改變它不是一種選擇。
- 當我將面板和按鈕放在asp:UpdatePanel中時,它再次正常工作。
- 當我爲HtmlInputText控件設置disabled =「disabled」(在標記中)時,它再次正常工作。
這種行爲的原因是什麼?
<asp:Panel ID="pnl" runat="server" Enabled="false">
<input type="text" runat="server" id="txt" />
</asp:Panel>
<asp:Button ID="btnSet" runat="server" Text="Set" OnClick="btnSet_Click" />
<asp:Button ID="btnEnable" runat="server" Text="Enable" OnClick="btnEnable_Click" />
-
protected void btnSet_Click(object sender, EventArgs e)
{
txt.Value = "Test";
}
protected void btnEnable_Click(object sender, EventArgs e)
{
pnl.Enabled = true;
}