我有这个代码
$(document).on('change','.custom-select', function(){
var list = [];
$('option:selected', $(this)).each(function() {
list.push($(this).val());
});
$(this).find('option').removeAttr("selected");
console.log(list);
})
我想要实现的是,如果所选值是“公共(public)”,则应取消选择全部并仅选择公共(public)。只有“公共(public)”应被视为单个选择。其余选项可以是动态的。我做错了什么?
最佳答案
使用 prop('selected', false)
$(document).on('change','.custom-select', function(){
if($('[value="Public"]', this).is(':selected')) {
$('option:not([value="Public"]):selected', this).prop('selected', false)
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select class="custom-select" multiple>
<option value="Public">Public</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option>
<option value="audi">Audi</option>
</select>
关于javascript - 如果选择了值,则将多个选择视为单选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59711621/