多个选择 - 根据使用jquery的选项选择更改所选项

时间:2014-10-10 09:56:34

标签: jquery

我有这个多选

<select id="mysel" name="mysel" multiple="multiple" data-native-menu="false">
<option>please choose</option>
<option value="!" SELECTED>all</option>
<option value="A">Sel A</option>
<option value="B">Sel B</option>
<option value="C">Sel C</option>
<option value="D">Sel D</option>
<option value="E">Sel E</option>
</select>

我想做的是:

  • 只要其中一个选项'Sel A' - &gt;选择“选择E”,然后取消选择“全部”选项
  • 如果选择了“全部”选项,则取消选中所有其他选项

我尝试使用$(“#mysel”)。change()以及$(“#mysel option”)。click(),但它确实没有按预期工作。

感谢您的提示

费边

1 个答案:

答案 0 :(得分:0)

我不确定这是否是最简单的方法,但至少它确实做了我想做的事情:

$("#mysel option").click(function() {
    var str = "";
    $( "#mysel option:selected" ).each(function() {
        str += this.value;
    });
    if (str == "") {
        $( "#mysel option" )[1].selected = true;
    } else if (this.value == "!") {
        $( "#mysel option:selected:not(:first)" ).each(function() {
            $(this).removeAttr('selected');
        })
    } else {
        $( "#mysel option" )[1].selected = false;
    }
});

http://jsfiddle.net/fabs07/rokfzxwd/

费边