设置 Selectpicker 值并将选项设置为动态选择

Set Selecpicker val and set option as selected dynamically

问题元数据

Bootstrap 选择器版本 : Selectpicker.VERSION = '1.7.2';

jQuery 版本 : jQuery JavaScript 库 v1.11.2

问题陈述 :

我有一个过滤器 select 列表。选择 option(过滤器)时,服务器会以完整的过滤器详细信息进行响应。根据返回的数据,我需要设置几个 select 元素(bootstrap 选择)。设置值后,我还需要将 option 设置为选中状态。

选择元素标记(都有不同的 id)

<select id="pspName" class="form-control selectpicker"> <!--Options --> </select>
<select id="pmName" class="form-control selectpicker"> <!--Options --> </select>
<select id="countryName" class="form-control selectpicker"> <!--Options --> </select>
.
.
.
<select id="currencyName" class="form-control selectpicker"> <!--Options --> </select>

jQuery代码:

选择器初始化效果很好:

 //all at once.
 $('.selectpicker').selectpicker();

代码已尝试但没有成功。所以需要帮助如下,

我尝试了通过 value 查找 option 的常规约定,但效果不佳,例如对于 select with id as pspName 通过 value 得到 option 并触发 click。但是它未能刷新 select 并且它也没有设置为 selected.

 $('select#pspName option[value="server_returned_value"]').click();

您必须使用特定方法来设置值:

$('#countryName').selectpicker('val', 'Japan');

我创建了一个小示例来根据一组属性设置多个元素:

JSFIDDLE