Поскольку IE 7 не поддерживает атрибут disabled
, я использую jQuery для добавления обработчика событий к событию change
, который проверяет, есть ли атрибут disabled
для выбора и установки css color
grey
на отключенной опции.
Однако, как только я нажимаю на раскрывающийся список, он сначала закрывает мой раскрывающийся список, а затем заново рисует новый с серым цветом.
Вот мой код:
(function($) {
$('select').change(function() {
if (this.options[this.selectedIndex].disabled) {
if (this.options.length == 0) {
this.selectedIndex = -1;
} else {
this.selectedIndex--;
}
//$(this).trigger('change');
}
});
$('select').each(function(it) {
if (this.options[this.selectedIndex].disabled) {
this.onchange();
}
});
$('select').click(function(e) {
//e.stopPropagation();
$(this).find('option[disabled]').css({
'color': '#cccccc'
});
});
})(jQuery);