我在ASP.NET表单上遇到了麻烦。我在页面上有一个按钮,在启动时禁用并且不可见,我在事件上启用它。 这是HTML:
<asp:Button ID="btnSaveQ37" runat="server" Text="Save and continue" ValidationGroup="save" OnClick="btnSave_Click" CssClass="saveButton" Visible="false" />
代码:
btnSaveQ37.Enabled = true;
btnSaveQ37.Visible = true;
按钮可见,但仍处于禁用状态。 谢谢
更新
感谢Marcus的想法,问题是它位于面板 禁用。
答案 0 :(得分:0)
使用Enabled="false"
并检查您的panel
<asp:Button ID="btnButton" runat="server" Text="Button" Enabled="false" />
答案 1 :(得分:0)
试试这段代码。
<script type="text/javascript">
window.onload = function callButtonClickEvent() {
document.getElementById('<%=btnSaveQ37.ClientId %>').click();
}
</script>
希望这有帮助。
答案 2 :(得分:0)
问题可能是该按钮位于已禁用的Panel上。这也将禁用位于其上的控件。要启用按钮,请启用面板或从面板中移动按钮。
答案 3 :(得分:0)
<tr>
<td style="width:30%; text-align:right;">
<asp:Label ID="Label1" runat="server">Drop Down List 1</asp:Label>
</td>
<td style="width:30%; text-align:left;">
<asp:DropDownList ID="ddl1" runat="server" ValidationGroup="save" AppendDataBoundItems="true" AutoPostBack="true" Width="100%" OnSelectedIndexChanged="ddl1_SelectedIndexChanged">
<asp:ListItem Text="" ></asp:ListItem>
<asp:ListItem Text="Value 1" Value="1"></asp:ListItem>
<asp:ListItem Text="Value 2" Value="2"></asp:ListItem>
</asp:DropDownList>
</td>
<td></td>
</tr>
按钮代码
<asp:Button ID="btnSaveQ37" runat="server" Text="Save and continue" ValidationGroup="save" CssClass="saveButton" Visible="false" Enabled="false" /></td>
代码背后:
protected void ddl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddl1.SelectedValue == "1")
{
btnSaveQ37.Enabled = true;
btnSaveQ37.Visible = true;
}
else
{
btnSaveQ37.Enabled = false;
btnSaveQ37.Visible = false;
}
}
这很好用
我对问题的猜测可能是面板 已禁用,其中按钮 已放置,尝试启用也是如此.. !!
protected void ddl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddl1.SelectedValue == "1")
{
pnlButtons.Enabled = true;
btnSaveQ37.Enabled = true;
btnSaveQ37.Visible = true;
}
else
{
pnlButtons.Enabled = false;
btnSaveQ37.Enabled = false;
btnSaveQ37.Visible = false;
}
}
其中 pnlButtons 是放置按钮的面板的名称。