回顧前面的screen標簽:
```
{screen molds="product" orderby="orders desc" as="s"}
自定義字段名字:{$s['fieldname']}
自定義字段選項輸出:
默認全部/全選:
對應鏈接:{$s['url']}
判斷選中:{if(!isset($filters[$s['field']]))}選中全部{/if}
對應值為:0
{foreach $s['list'] as $ss}
*每個選項鏈接:{$ss['url']}
每個選項字段:{$s['field']}
每個選項名稱:{$ss['value']}
每個選項對應的值:{$ss['key']}
判斷是否已選:
{if(isset($filters[$s['field']]) && strpos(','.$filters[$s['field']].',',','.$ss['key'].',')!==false)}
這里寫選中時的標識
{/if}
{/foreach}
{/screen}
```
> 前面提到過,選項鏈接的缺省值,都講的是單選篩選,也就是說,一個選擇字段,只能選擇一個參數,不能選擇多個參數。
比如:顏色colors:紅色,白色,黃色,只能選擇一種顏色進行篩選。
現在我就要講解如何支持同時選擇紅色、白色兩個選項的篩選
(官方DEMO就是多選篩選)
多選篩選關鍵一個地方在于,如何把多個選項同時傳給后端處理,我用官方demo中的篩選鏈接講解。
`http://demo.jizhicms.cn/screen-product-1-categories-1,2-brands-1-os-.html`
`screen`:標識這個鏈接請求的是screen篩選控制器
`product`:產品模塊的標識
`1`:對應的欄目ID值
`categories-1,2-brands-1-os-`:傳遞的篩選參數
很容易看出上面傳遞的篩選參數用`-`拼接兩個參數,用`,`拼接多個參數值,而空值則代表缺省
ajax請求多選篩選:
```
function get_tpl(jz_screen){
var tid = {$type['id']};
var molds = "{$type['molds']}";
//Screen/index/molds/$1/tid/$2/jz_screen/$3
//screen-molds-tid-jz_screen
var gourl = '{fun get_domain()}/screen-'+molds+'-'+tid+'-'+jz_screen+'.html';
$("#gourl").val(gourl);
$.ajax({
url:"{fun U('screen/index')}",//請求的url地址
// dataType:"json",//返回格式為json
async:true,//請求是否異步,默認為異步,這也是ajax重要特性
data:{tid:tid,molds:molds,jz_screen:jz_screen,ajax:1,ajax_tpl:1},//參數值
type:"GET",//請求方式
beforeSend:function(){
//請求前的處理
},
success:function(r){
if(r==1){
$(".products").html('暫無數據~');return false;
}
$(".products").html(r);
},
complete:function(){
//請求完成的處理
},
error:function(){
//請求出錯處理
alert('網絡錯誤');
}
})
}
```
> 用`jz_screen`作為篩選字段的拼接的參數傳遞,篩選控制器處理這個字段內拼接的參數及參數值
- 引言
- 條款
- 開始使用
- 模板標簽
- 公共配置
- 系統配置
- 自定義配置
- 網站欄目
- 全局欄目屬性
- 導航欄相關
- 當前欄目下的直系下級
- 當前欄目下的直系上級
- 欄目詳情頁
- 欄目列表頁
- 欄目分頁
- 輸出三級及三級以上欄目
- 當前位置面包屑
- 獲取當前欄目的頂級欄目
- 直播講解欄目相關
- 文章詳情頁
- 基本內容
- 點贊
- 收藏
- 相關文章
- 輸出新增字段
- 商品詳情頁
- 基本內容
- 輸出新增字段
- 商品圖集
- 點贊
- 收藏
- *點評星星
- 加入購物車
- *評論
- 相關商品
- 自定義字段
- 原樣輸出
- 單選字段
- 多選字段
- loop標簽
- 通用說明
- loop分頁
- 案例說明
- like使用
- 怎么判斷loop沒有數據
- limit使用
- day參數
- table缺省參數
- 單選多選相關
- 單選字段輸出
- 多選字段輸出
- 特殊輸出
- 輸出換行
- 替換字符串
- 輸出被解析的HTML原句
- 截取字符串
- 內容body去除HTML
- 分割字符輸出
- 人性化時間顯示
- 搜索功能
- 單模塊搜索
- 多模塊搜索
- 搜索擴展
- 搜索結果列表頁
- 會員模塊
- 判斷是否登錄
- 判斷是否評論
- 計算評論數
- 如果判斷會員組是否權限
- 如何輸出分組信息
- 如何輸出所有用戶分組
- 如何輸出所有會員
- 輸出某個會員發布的內容
- 查詢一個用戶的所有信息
- 輸出我的粉絲列表
- 輸出我的關注列表
- 獲取粉絲數
- 獲取關注數
- 判斷是否關注
- 關注與取消關注鏈接
- 判斷會員是否購買該商品
- foreach標簽
- for標簽
- fun標簽
- php標簽
- 不解析標簽
- if..else..標簽
- screen篩選標簽
- 客戶端判斷
- 輪播圖
- 友情鏈接
- 自定義圖集輸出
- Tags標簽調用及使用說明
- 網站留言調用
- 自定義單頁
- 各種統計
- 各種計數顯示數
- 文章歸檔內容歸檔
- 系統架構
- 高級功能
- ajax數據交互
- ajax在欄目頁的應用
- ajax在screen篩選中的應用
- screen多選篩選
- Message留言表單
- 萬能表單
- 多語言支持
- 系統高級配置說明
- 網站動態鏈接
- 郵件發送
- 自定義路由配置
- 插件開發
- 控制器方法覆蓋(cover)[簡單]
- 控制器方法鉤子(hook)[復雜]
- 制成后臺安裝插件
- 微信小程序
- 開始起步
- 小程序開發
- API訪問接口數據
- 輪播圖(幻燈片)
- 訪問欄目列表
- 詳情頁查詢
- 欄目詳情查詢
- 留言接口
- 附錄
- 時間
- 富文本編輯器導航
- 偽靜態配置
- 二維碼生成
- 常見問題
- 靜態生成HTML頁面失敗問題
- 為什么默認模板打開首頁很慢,而打開后臺卻很快?
- 如何判斷首頁、欄目頁、內容頁、單頁
- 視頻教程
- 版本更新
- 寶塔一鍵部署