我想根据某些条件显示/隐藏选择选项。它在火狐中工作正常,但在IE中不起作用。我不想使用 remove((,因为我想保留数据以在不同条件下再次显示。
IE 版本 10, jQuery v1.11.3
$('#ddl').children('option').each(function () {
if ($(this).attr('e-id') != 4) {
$(this).hide();
}
else {
$(this).show();
}
});
IE不支持选项标签上的某些css属性。我知道的那些是
显示、高度、可见性、指针事件
option:first-child, &:nth-child(3){
color: red;
}
option:nth-child(2){
font-weight: bold;
}
option:nth-child(4){
font-size: 30px;
}
option:nth-child(5){
display:none;
}
<select>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
<option>E</option>
<option disabled>F</option>
<option>G</option>
<option>H</option>
<option>I</option>
</select>
但是,如果您不希望用户选择该选项,则可以禁用该选项。
您可以使用
prop
来替换attr