我的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变灰并从代码隐藏中禁用它而不覆盖引导样式,然后将其返回到可编辑状态,同时保留原始选定值。
答案 0 :(得分:0)
检查AutoPostBack =&#34; True&#34;
代码 thanx