禁用/重新启用

时间:2016-10-05 22:48:03

标签: c# html asp.net twitter-bootstrap

我的aspx页面上有以下ASP:DropDownList

<label>OT Code No.</label>
<asp:DropDownList runat="server" ID="ddlOvertimeCode" class="form-control" TabIndex="1"></asp:DropDownList>

在HTML中呈现如下内容:

<select name="ctl00$MainContentPlaceHolder$ddlOvertimeCode" id="MainContentPlaceHolder_ddlOvertimeCode" tabindex="1" class="form-control">
    <option selected="selected" value="0">-Select-</option>
    <option value="1">1 - 10B PLES</option>
    <option value="2">2 - Investigation</option>
    <option value="3">3 - Arrest</option>
    <option value="4">4 - Misc</option>
    <option value="5">5 - EWW</option>
    <option value="6">6 - Holiday</option>
    <option value="7">7 - In-Lieu Holiday</option>
</select>

提交表单后,我使用.cs文件中的以下代码禁用DropDownList

ddlOvertimeCode.Attributes.Add("disabled", null);

我尝试了其他禁用dropdownlist的方法,但是所有这些方法都会覆盖列表的引导样式,或者尽管灰显和ReadOnly仍然可以更改下拉列表。添加disabled属性是我发现灰盒子的唯一方法,同时保持其样式不变。

当用户撤回表单,使其再次可编辑,并且代码使用相同的方法重新启用dropdownlist时,问题就出现了:

ddlOvertimeCode.Attributes.Remove("disabled");

删除disabled属性会重置dropdownlist并让我无法从代码隐藏中更改DropDownList.SelectedValue

我需要一种方法来使DropDownList变灰并从代码隐藏中禁用它而不覆盖引导样式,然后将其返回到可编辑状态,同时保留原始选定值。

1 个答案:

答案 0 :(得分:0)

检查AutoPostBack =&#34; True&#34;

代码                                        thanx