# addSearchItem
零云商業版(OpenCMF)、零云商城(lyshop)才有此功能,其他版本不支持
注意如果設置了此方法,那么setSearch的文本框搜索會自動隱藏,setSearch的url作為搜索提交地址屬性仍然有效。
多條件搜索,在列表頂部顯示多個類型條件用于數據的高效篩選,可選的類型有text、radio、select、date、 datetime、dateranger等
## 方法原型
function addSearchItem ($template){}
## 參數
| 參數 | 類型 | 是否必須 | 說明 |
| ------------ | ------------ | ------------ | ------------ |
| $name | string | 是 | 字段名稱 |
| $type | string | 是 | 表單類型(可以取值的類型text、radio、select、date、 datetime、dateranger) |
| $title | string | 是 | 表單標題 |
| $options | array | 否 | 表單options(radio、select等類型的選項類似array('username' => '用戶名', 'email' => '郵箱', 'mobile' => '手機號')) |
## 用法示例
// 使用Builder快速建立列表頁面。
$builder = new \Common\Builder\ListBuilder();
$builder->setMetaTitle('用戶列表')
->setTableDataPage($page->show())
->addSearchItem('status', 'select', '狀態' ,'狀態', array('1' => '正常', '0' => '已禁用', '-1' => '已刪除'))
->addSearchItem('reg_type', 'select', '注冊來源' ,'注冊時間', array('username' => '用戶名', 'email' => '郵箱', 'mobile' => '手機號'))
->addSearchItem('create_time', 'dateranger', '注冊時間' '注冊時間')
->addSearchItem('keyword', 'text', '關鍵字','用戶名/郵箱/手機號等')
->display();
// 與多條件篩選匹配的控制器代碼參考如下:
// 多條件篩選
if (isset($_GET['status'])) {
$map['status'] = $_GET['status'];
} else {
$_GET['status'] = '1';
$map['status'] = $_GET['status'];
}
if ($_GET['reg_type']) {
$map['reg_type'] = $_GET['reg_type'];
}
if ($_GET['create_time']) {
$create_time = explode('~', $_GET['create_time']);
$map['create_time'] = array(array('gt', strtotime($create_time[0])),array('lt', strtotime($create_time[1]) + 86400));
}
$keyword = I('keyword', '', 'string');
$condition = array('like','%'.$keyword.'%');
$map['id|username|nickname|email|mobile'] = array(
$condition,
$condition,
$condition,
$condition,
$condition,
'_multi'=>true
);
- 簡介
- 環境要求
- 安裝系統
- 目錄結構
- 常見問題
- 基礎知識
- 編輯器
- 前端規范
- 前端框架文檔
- Builder教程
- Builder的來歷
- ListBuilder使用
- setMetaTitle
- addTopButton
- setSearch
- addSearchItem
- setTabNav
- addTableColumn
- setTableDataList
- setTableDataListKey
- setTableDataPage
- addRightButton
- alterTableData
- setExtraHtml
- setTemplate
- FormBuilder使用
- setMetaTitle
- setTabNav
- setExtraItems
- setPostUrl
- addFormItem
- setFormData
- setExtraHtml
- setAjaxSubmit
- setTemplate
- 擴展FormBuilder
- 模塊開發
- 創建模塊
- 描述文件
- 模型( M )
- 模版( V )
- 控制器( C )
- API接口
- 核心模塊
- 文件上傳
- 微信小程序模塊
- 注冊登陸接口
- 錢包模塊
- 統一支付
- Cms模塊
- 幻燈片接口
- 文檔列表接口
- 文檔詳情接口
- 發表評論接口
- 評論列表接口
- 收藏的文檔接口
- 收藏接口
- 分類列表接口
- IM模塊
- 發送消息接口
- 最近聊天列表接口
- 查詢新消息接口
- 插件相關
- 短信插件
- 支付插件
- 支付寶支付
- 微信支付
- 站群模塊
- 模板開發
- 準備工作
- 目錄結構
- 數據調用
- 專題
- 插件開發
- 圖片顯示
- 獲取用戶信息
- 判斷用戶登陸
- 表單提交AjaX
- 文件上傳
- 2.0兼容寫法
- 模板標簽
- 核心模塊
- Cms模塊
- 欄目分類調用
- Cordova
- 配置跨域支持
- 本地開發調試教程
- 打包成apk和ipa
- 自定義APP信息
- 常見問題
- 申請Apple開發者賬戶
- 多主題開發
- 新建主題
- 目錄結構
- 模板變量
- 定制安裝部署