optgroup阻止jquery执行

时间:2015-09-30 21:30:13

标签: javascript jquery html

optgroup添加到select时,以下Jquery行似乎不会生效。

$('#desire_candidate > option').removeAttr("selected");

HTML

<select name="desire_candidate" id="desire_candidate">
      <option id="selected1" style="color:gray" selected>Select below</option>
         <!-- Categorize select options -->
         <optgroup label="Web">
             <option class="desire_candidate" value="Entry level Frontend Developer">Entry level Frontend Developer</option>
             <option class="desire_candidate" value="Entry level Backend Developer">Entry level Backend Developer</option>
         </optgroup>

         <optgroup label="Mobile">
            <option class="desire_candidate" value="Entry level iOS Developer">Entry level iOS Developer</option>
             <option class="desire_candidate" value="Entry level Android Developer">Entry level Android Developer</option>
         </optgroup>
</select>

的Javascript

// Previous button
$('#previous1').click(function(){

    // Hide current stage
    $('#step2').css('display', 'none');

    // Display previous stage
    $('#step1').css('display', 'block');

    // Reset selected option to default
    $('#desire_candidate > option').removeAttr("selected");
    //$('#selected1').Attr("selected");


    });

1 个答案:

答案 0 :(得分:0)

因为选项不再是选择框的直接子项。

>符号表示下一个选择器是前一个选择器的直接后代。

您可以使用#desire_candidate option作为选择器,它会在select中查找任何option。或#desire_candidate > optgroup > option只会查找optgroups中的选项

使用最符合您需求的任何一种。

CSS Child Combinators reference