bs_grid 是一個很方便的 data grid 功能介面, 可惜沒有支援 bootstrap 4, 不過在 bootstrap 3 下, 非常方便好用. github 連結: https://github.com/pontikis/bs_grid
今天遇到的問題是需要動態下 filter rules, 但在官方資料上, 僅能做預設, 如: https://www.pontikis.net/labs/bs_grid/demo/set-rules/
於是研究一下 github 上的 source code, 其實可以透過動態設定 filter rules 並使用 init 方法來進行動態更新介面, 程式如下:
$("#mygrid").bs_grid('getOption', 'filterOptions').filter_rules.push({ "condition": { "filterType": "text", "field": "dataid", "operator": "equal", "filterValue": [ "2" ] }, "logical_operator": "AND" }); $("#mygrid").bs_grid('init');
如此一來便能進行在動態下新增過濾器功能, 達成所需.