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');
如此一來便能進行在動態下新增過濾器功能, 達成所需.