jQuery设置Multi Select OptGroup选项

时间:2015-04-28 21:49:48

标签: javascript jquery

我有一个包含OptGroups的Multi-Select列表,如下所示:

<select multiple="multiple" id="idCountry">
    <optgroup label="ASIA">
      <option value="AUSTRALIA">AUSTRALIA</option>
      <option value="CHINA">CHINA</option>
    </optgroup>
    <optgroup label="EUROPE">
      <option value="FRANCE">FRANCE</option>
      <option value="UK">UK</option>
    </optgroup>
</select>

如何让jQuery仅通过Label为用户选择欧洲的所有目的地?如何通过标签取消选择Optgroup中的所有目的地?

添加了Ejay的娱乐。这是我尝试过的,但它不起作用,我不知道从哪里开始。

$(".chkRegion").click(function () {
    if (this.checked) {
        var optgroup = $('select optgroup[label="' + this.checked + '"]')
        optgroup.attr('selected', true);
    }
});

2 个答案:

答案 0 :(得分:1)

设置

$('optgroup[label=EUROPE] option').prop('selected',true);

相应地更改标签值和布尔值以取消选择

DEMO

答案 1 :(得分:1)

var element = $('optgroup[label=EUROPE] option');
element.prop('selected', 'selected');

如果您有多个具有相同组标签的select,请在选择器

中添加select的id
var element = $('#idCountry optgroup[label=EUROPE] option');
element.prop('selected', 'selected');

JSFiddle demo