单选条件:
<!--按联动菜单搜索--> <div class="form-group row"> <label class="col-md-2 control-label">联动菜单</label> <div class="col-md-9"> <label><a class="label {if !$params.csxz || dr_linkage('address', $params.csxz, 0, 'child')}label-success{else}label-default{/if}" href="{Router::search_url($params, 'csxz', NULL)}">不限</a></label> <!--调用联动菜单address,pid为动态获取的地区id--> {list action=linkage code=address pid=$params.csxz} <label><a class="label {if $t.id==$params.csxz}label-success{else}label-default{/if}" href="{Router::search_url($params, 'csxz', $t.id)}">{$t.name}</a></label> {/list} </div> </div> <!--单选按钮字段搜索--> <div class="form-group row"> <label class="col-md-2 control-label">单选字段</label> <div class="col-md-9"> <label><a class="label {if !$params.danxuananniu}label-success{else}label-default{/if}" href="{Router::search_url($params, 'danxuananniu', NULL)}">不限</a></label> <!--调用单选字段数据方法--> {php $field = dr_field_options($ci->module['field']['danxuananniu']['id']);} {loop $field $value $name} <label><a class="label {if $value==$params.danxuananniu}label-success{else}label-default{/if}" href="{Router::search_url($params, 'danxuananniu', $value)}">{$name}</a></label> {/loop} </div> </div> <!--复选字段搜索--> <div class="form-group row"> <label class="col-md-2 control-label">复选字段</label> <div class="col-md-9"> <label><a class="label {if !$params.fuxuankuang}label-success{else}label-default{/if}" href="{Router::search_url($params, 'fuxuankuang', NULL)}">不限</a></label> <!--调用字段数据方法--> {php $field = dr_field_options($ci->module['field']['fuxuankuang']['id']);} {loop $field $value $name} <label><a class="label {if $value==$params.fuxuankuang}label-success{else}label-default{/if}" href="{Router::search_url($params, 'fuxuankuang', $value)}">{$name}</a></label> {/loop} </div> </div> <!--下拉框字段搜索--> <div class="form-group row"> <label class="col-md-2 control-label">下拉选择字段</label> <div class="col-md-9"> <label><a class="label {if !$params.xialaxuanze}label-success{else}label-default{/if}" href="{Router::search_url($params, 'xialaxuanze', NULL)}">不限</a></label> <!--调用单选字段数据方法--> {php $field = dr_field_options($ci->module['field']['xialaxuanze']['id']);} {loop $field $value $name} <label><a class="label {if $value==$params.xialaxuanze}label-success{else}label-default{/if}" href="{Router::search_url($params, 'xialaxuanze', $value)}">{$name}</a></label> {/loop} </div> </div> <div class="form-group row"> <label class="col-md-2 control-label">单一购买价格</label> <div class="col-md-9"> <!--自定义一个价格返回数组,这个都懂得,php最基础的数组用法--> {php $price=array('0,500'=>'500以内','500,1000'=>'500到1000','1000,2000'=>'1000到2000','2000,3000'=>'2000到3000','3000,0'=>'3000以上');} <label><a class="label {if !$params.dydgm}label-success{else}label-default{/if}" href="{Router::search_url($params, 'dydgm', NULL)}">不限</a></label> {loop $price $i $t} <label><a class="label {if $i==$params.dydgm}label-success{else}label-default{/if}" href="{Router::search_url($params, 'dydgm', $i)}">{$t}</a></label> {/loop} </div> </div> <div class="form-group row"> <label class="col-md-2 control-label">组合购买价格自定义</label> <div class="col-md-9"> {php $zhxgm = explode(',', $params.zhxgm);} <label><input type="text" class="form-control" value="{$zhxgm[0]}" id="zhxgm_min"></label> <label>到</label> <label><input type="text" class="form-control" value="{$zhxgm[1]}" id="zhxgm_max"></label> <label>这是自定义价格范围搜索的写法</label> </div> </div> <!--按关键字搜索--> <div class="form-group row"> <label class="col-md-2 control-label" style="padding-top:5px">内容搜索</label> <div class="col-md-6"> <div class="input-group"> <input type="text" class="form-control" onkeypress="if(event.keyCode==13) {dr_module_search();return false;}" name='keyword' value='{$keyword}' id='search_keyword'> <span class="input-group-btn"> <button class="btn blue" onclick="dr_module_search()" type="button"> <i class="fa fa-search"></i> 搜索</button> </span> </div> </div> </div> <script> // 这段js是用来执行搜索的 function dr_module_search(name) { var url="{Router::search_url($params, ['keyword', 'zhxgm'], ['mykeyword', 'myzhxgm'])}"; var keyword = $("#search_keyword").val(); var zhxgm_min = $("#zhxgm_min").val(); var zhxgm_max = $("#zhxgm_max").val(); zhxgm_max = zhxgm_max ? zhxgm_max : 0; zhxgm_min = zhxgm_min ? zhxgm_min : 0; if (zhxgm_max || zhxgm_min) { url = url.replace('myzhxgm', zhxgm_min+','+zhxgm_max); } else { url = url.replace('myzhxgm', ''); } if (keyword) { url = url.replace('mykeyword', keyword); } else { url = url.replace('mykeyword', ''); } location.href=url; return false; } </script>
多选条件:
https://www.diyuncms.com/help/show/44.html
$params是搜索参数数组,只能在搜索页面使用
搜索函数:
{Router::search_url($params, '字段名', '字段值', '模块目录(search页面可以省略)')}
如果在首页或者非search页面使用这个函数必须加上第四个参数:模块目录
{Router::search_url($params, '字段名', '字段值', '模块目录')}
注意:复选框字段,在创建选项值的时候,务必填写储存值,且储存值不可为汉字,建议为数字或者字母代替。
搜索函数多参数写法:
{Router::search_url($params, ['order', 'flag'],['updatetime', '1'])}
前面2个是条件字段,后面2个是值