Bootstrap Select - 在动态添加的元素上重新初始化

Posted

技术标签:

【中文标题】Bootstrap Select - 在动态添加的元素上重新初始化【英文标题】:Bootstrap Select - reinitialize on dynamically added element 【发布时间】:2014-06-24 05:23:50 【问题描述】:

我正在使用 Bootstrap Select (http://silviomoreto.github.io/bootstrap-select/) 为我的网站的每个部分显示带有 Font-Awesome 图标的下拉菜单。

我添加了添加新部分的功能 - 单击添加按钮时,会添加一个新部分(与上一部分重复)。在本节中,Bootstrap Select 不起作用。

我尝试像这样重新初始化它:

var select = $('[name="section['+ numbersection +'][section_icon]"]');
$(select).selectpicker('destroy');
$(select).selectpicker(
  showIcon: false
);

但这不起作用,因为 detroy 方法似乎没有触发。有没有办法在动态添加的元素上重新初始化 Bootstrap Select?

【问题讨论】:

【参考方案1】:

您必须按照plugin page 中的说明刷新您的选择

$(select).selectpicker('refresh');

【讨论】:

有人知道selectpicker的一些文档吗?上面的链接给出了 404 错误,我需要一些方法列表。谢谢。 developer.snapappointments.com/bootstrap-select 是文档的新链接【参考方案2】:

refresh()

要使用 javascript 以编程方式更新选择,首先操作选择,然后使用刷新方法更新 UI 以匹配新状态。在删除或添加选项时,或者通过 JavaScript 禁用/启用选择时,这是必需的。

$(".selectpicker").selectpicker('refresh');

Demo

【讨论】:

以上是关于Bootstrap Select - 在动态添加的元素上重新初始化的主要内容,如果未能解决你的问题,请参考以下文章

bootstrap-select问题,动态传入option

为啥angularjs给bootstrap-select动态添加<option>的时候能追加一条

Bootstrap selectpicker - 如何动态添加 optgroup

bootstrap-select.js 怎么动态加载

在select option 中添加 bootstrap tooltip问题

bootstrap select下拉框模糊搜索和动态绑定数据解决方法