我有一组下拉框,在1个框中使用了一个值,它被禁用,其他框中值的背景变为灰色。这很好用。我的问题是当我重置表单时,背景不会返回白色并且值保持禁用状态。我正在使用普通输入类型=' reset"清除表格 这是我用来改变背景的功能
function CheckSelected() {
$(document).on('change', 'select', function () {
$('option[value="disabled"]').prop('disabled', false);
$(this).addClass('exception');
$('option[value="' + this.value + '"]:not(.exception *)').prop('disabled', true);
$('option[value="' + this.value + '"]:not(.exception *)').css('background-color', 'grey');
$(this).removeClass('exception');
});
}
答案 0 :(得分:0)
您可以收听表单重置事件并重置背景颜色:
$(document).on('reset', 'form', function() {
$(this).find('option').css('background-color', '');
});
http://jsfiddle.net/262ro32y/1/
您也可以删除样式属性,而不是将背景颜色设置为空字符串:
$(this).find('option').removeAttr('style');