C# 将下拉列表设置为禁用将丢失该值

C# 将下拉列表设置为禁用将丢失该值,c#,asp.net,drop-down-menu,attributes,disabled-control,C#,Asp.net,Drop Down Menu,Attributes,Disabled Control,在表单中,如果勾选复选框,下拉列表将被禁用。下拉列表有两个选项C o r D。当下拉列表被禁用并且表单再次保存时,它将丢失在下拉列表中选择的值,并且只读取第一个值 因此,如果我选择第二个选项D,当下拉菜单被禁用时,我再次保存表单,它在第一个选项C中读取,并覆盖先前保存的值 我通过添加属性将下拉列表设置为禁用: ddlJobType.Attributes.Add("disabled", "disabled"); 我尝试在表单保存时删除该属性,以便它读取所选的实际值,但没有成功: ddlJobTy

在表单中,如果勾选复选框,下拉列表将被禁用。下拉列表有两个选项C o r D。当下拉列表被禁用并且表单再次保存时,它将丢失在下拉列表中选择的值,并且只读取第一个值

因此,如果我选择第二个选项D,当下拉菜单被禁用时,我再次保存表单,它在第一个选项C中读取,并覆盖先前保存的值

我通过添加属性将下拉列表设置为禁用:

ddlJobType.Attributes.Add("disabled", "disabled");
我尝试在表单保存时删除该属性,以便它读取所选的实际值,但没有成功:

ddlJobType.Attributes.Remove("disabled");
如何使下拉列表保持禁用状态,但不丢失值?

是否可以在您的站点中使用只读属性


禁用的控件不会填充到回发-。因此后端不知道以前选择了什么。

您无法在代码隐藏中获得禁用的控件值,因此请使用readyonly属性true或使用隐藏控件来保存下拉列表中的选定值,以便您可以从代码隐藏中访问这些值