如何从Bootstrap多个selectpicker获取选定的值?

问题描述

这是我的select元素,它具有multiple属性

<select id="dd-personnels" onchange="personnelChange()" asp-items="Model.Personnels" multiple data-max-options="1" class="form-control form-control-sm selectpicker"></select>

这是我的代码,用于初始化以上selectpicker的{​​{1}};

select

如何在选择的$('.selectpicker').selectpicker({ liveSearch: true }); 获取选择的值?

解决方法

即使内联事件处理程序是一种不好的做法,您也需要向内联添加两个关键字:

<select id="dd-personnels" onchange="personnelChange(this,event)" ....

现在您的功能是:

function personnelChange(ele,event) {
   var val = $(ele).selectpicker('val');
   console.log(val);
}

有关详细信息,您可以查看documentation

摘要:

function personnelChange(ele,event) {
    var val = $(ele).selectpicker('val');
    console.log(val);
}

 $('#dd-personnels').selectpicker({
    liveSearch: true
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css">
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"></script>0
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/css/bootstrap-select.min.css">
<script src="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.14/dist/js/bootstrap-select.min.js"></script>

<select id="dd-personnels" onchange="personnelChange(this,event)" asp-items="Model.Personnels" multiple data-max-options="1" class="form-control form-control-sm selectpicker">
    <option>Mustard</option>
    <option>Ketchup</option>
    <option>Barbecue</option>
</select>