背景
最近在使用Bootstrap table ,有一个在某一列添加一个下拉列表,并且通过 “getAllSelections”方法获取所选行的需求,在实现这个功能的时,走了一些弯路,遇到了一些坑。所以今天总结出来,既是自己的学习,也分享给大家,希望能够有些帮助。
如何解决
添加这个下拉列表有以下两种方法:
利用Column options 中的 formatter 将数据转换成下拉列表的形式
使用bootstrap-table拓展中的editable插件
这次主要介绍第一种,基本的思路为:首先通过 bootstrap-table 的Column 配置项中的formatter,将获取到的数据转换为包含数据的 select 控件。然后根据用户选择项更新对应单元格数据,最后通过getallselection方法获取所选行数据。
formatter,其配置项为function,有三个参数:(value,row,index)
formatter: setSelect
function setSelect(value, row, index)
{
var strHtml = "";
if (value == "Item 1")
{
strHtml = "Item 1Item 2";
}
else
{
strHtml = "Item 1Item 2";
}
return strHtml;