Que ferions nous si nous n’avions pas Internet Explorer pour nous aider à nous torturer les méninges ? On risquerait de s’ennuyer !
Il semblerait que dans la version 7 de ce navigateur cher aux développeurs masochistes, on n’aie toujours pas la possibilité pourtant bien utile de désactiver une des options d’un ’select’.
Heureusement, javascript (boosté par jQuery) permet de régler pas mal des lacunes du navigateur que l’on adore détester.
Voici un petit script trouvé sur internet qui peut vous dépanner si vous êtes confronté à ce problème :
$(document).ready(function () {
// Disabled options fix for Internet Explorer
$('select').each(function () {
this.rejectDisabled = function () {
if (this.options[this.selectedIndex].disabled) {
if (this.lastSelectedIndex) {
this.selectedIndex = this.lastSelectedIndex;
} else {
var first_enabled = $(this).children('option:not(:disabled)').get(0);
this.selectedIndex = first_enabled ? first_enabled.index : 0;
}
} else {
this.lastSelectedIndex = this.selectedIndex;
}
};
this.rejectDisabled();
this.lastSelectedIndex = this.selectedIndex;
$(this).children('option[disabled]').each(function () {
$(this).css('color','#CCC');
});
$(this).change(function () {
this.rejectDisabled();
});
});
});
Merci jQuery
