我有一个Select
选项,我通过下面的javascript禁用
document.getElementById('CmbDepartment').disabled = true;
但在禁用之后会发生什么,数据库中的值会保存为0
。
删除禁用部分后,我的值会正确保存。
但我想禁用
Select
列表。
这是我的Select
列表
<select id="CmbDepartment" runat="server" style="width: 25%" onchange="FunEmpFill()">
<option value="0">--Select--</option>
</select>
那么还有其他方法可以解决这个问题吗?
答案 0 :(得分:0)
如果我理解正确,您已将选项值指定为0.然后禁用选择标记,因此它将采用默认选项值。
您可以更改选项值或完全删除。
或者您可以动态地将值分配给select
标签并通过JS
前
$('#CmbDepartment').append($('<option>', {value:1, text:'One'}));
$('#CmbDepartment').append('<option val="1">One</option>');
var option = new Option(text, value); $('#CmbDepartment').append($(option));
答案 1 :(得分:0)
让我提出一个黑客攻击。
我没有禁用选择,而是将样式属性pointer-events
设置为none
。另外,我添加了opacity: 0.5;
以使其看起来已禁用。
这不会阻止select
控件与其他表单元素一起提交。
尝试运行下面的代码段。
.disabled {
pointer-events: none;
opacity: 0.5;
}
<select>
<option>Value 1</option>
<option>Value 2</option>
<option>Value 2</option>
</select>
<button onClick="document.getElementsByTagName('select')[0].classList.add('disabled');">Disable Select</button>