这是我的目标:在一个元素上做一些事情<optgrooup>,如果它的所有孩子都是隐形的.
我的下面的代码概述了红色,如果它有任何看不见的孩子.但是,只有当所有的孩子都看不见时,我才愿意这样做.如果元素具有任何可见的子项,则不要突出显示它.
我怎样才能调整jQuery选择器来做到这一点?
提前致谢.
<select multiple="multiple" name="availableInstanceId" id="availableInstanceId">
<optgroup label="Option Group 1">
<option >visible item 1</option>
<option >visible item 2</option>
</optgroup>
<optgroup label="Option Group 2 - Should be highlighted">
<option style="display:none;">invisible A</option>
<option style="display: none">invisible B</option>
</optgroup>
<optgroup label="Option Group 3 - Should not be highlighted">
<option >visible C</option>
<option style="display: none">invisible D</option>
</optgroup></select>
<script type="text/javascript">
var filterOptions = function(e) {
// Goal: highlight the <optgroup>'s that have *only* invisible children
$( '#availableInstanceId > …Run Code Online (Sandbox Code Playgroud)