# bi.searcher ## 搜索逻辑控件,[BI.Widget](/core/widget.md) {% method %} [source](https://jsfiddle.net/fineui/k6s24et1/) {% common %} ```javascript BI.createWidget({ type: "bi.searcher", element:"#wrapper", adapter: { getItems: function () { return [{ type: "bi.label", value: "张三" }] } }, popup: { type: "bi.button_group", cls: "bi-border", items: items, layouts: [{ type: "bi.vertical" }], }, masker: false }) ``` {% endmethod %} ## API ##### 基础属性 | 参数 | 说明 | 类型 | 可选值 | 默认值 | :------ |:------------- | :-----| :----|:---- | hgap | 效果相当于容器左右padding值 | number | —| 0 | | vgap | 效果相当于容器上下padding值 | number | — | 0 | | lgap | 效果相当于容器left-padding值 | number | —| 0 | | rgap | 效果相当于容器right-padding值 | number | — | 0 | | tgap | 效果相当于容器top-padding值 | number | —| 0 | | bgap | 效果相当于容器bottom-padding值 | number | —| 0 | | chooseType | 选择类型 | const | | CHOOSE_TYPE_SINGLE | | isDefaultInit | 是否默认初始化子节点 |boolean | true,false | false | | isAutoSearch | 是否自动搜索 |boolean | true,false | true | | isAutoSync | 是否自动同步数据, 即是否保持搜索面板和adapter面板状态值的统一 |boolean | true,false | true | | onSearch | isAutoSearch为false时启用 | function(op.callback) | — | —| | el | 开启弹出层的元素 | object | — | {type: "bi.search_editor"}| | popup | 弹出层 | object | — |{type: "bi.searcher_view"}| | adapter | 弹出层显示的位置元素 | object | —| null| | masker | masker层 | object | — | {offset: {}}| ## 对外方法 | 名称 | 说明 | 回调参数 | :------ |:------------- | :----- | populate | 刷新列表 | result, searchResult, keyword | | setValue | 设置value值 | value | | getValue | 获取被选中的值 |—| | adapter | 适配器 | — | | doSearch | 开始搜索 | — | | stopSearch | 停止搜索 | —| | isSearching | 是否正在搜索 | —| | isViewVisible | 组件是否可见 | —| | getView | 获取搜索列表栏 | —| | hasMatched | 是否匹配 | —| | adjustHeight | 调整高度 | —| | adjustView| 调整搜索列表栏| —| | getKeyword | 获取搜索关键词| —| | getKeywords | 获取搜索关键词数组| —| ## 事件方法 | 事件名称| 说明| 回调参数 | | :------ |:------------- | :----- | EVENT_START | 开始搜索 | —| | EVENT_STOP | 停止搜索 | —| | EVENT_PAUSE | 暂停搜索 | —| | EVENT_SEARCHING | 搜索中| —| | EVENT_AFTER_INIT | 初始化之后 | —| ## 事件 | 事件 | 说明 | | :------ |:------------- | |BI.Searcher.EVENT_CHANGE | 搜索结果面板发生改变触发 | |BI.Searcher.EVENT_START | 开始搜索触发 | |BI.Searcher.EVENT_STOP | 停止搜索触发(搜索框为空) | |BI.Searcher.EVENT_PAUSE | 搜索暂停触发(搜索文本以空白字符结尾) | |BI.Searcher.EVENT_SEARCHING | 正在搜索时触发 | |BI.Searcher.EVENT_AFTER_INIT | 搜索结果面板初始化完成后触发 | ---