使用迅睿做信息站时,经常会用到筛选功能。这里以地区筛选为例,如何实现单击子类同时显示父类就是点击一级菜单时,一线菜单不消失二级菜单显示出来,选中了二级菜单后三级菜单又显示出来。
先上效果图:

代码如下:
<!--按联动菜单搜索-->
<!--按联动菜单搜索-->
<div class="form-group row">
<label class="col-md-2 control-label">一级联动</label>
<div class="col-md-10">
<?php
$tp = dr_linkage('address', $params.csxz);
if ($tp.pid) {
$tp = dr_linkage('address', $tp.pid);
}
$tpid = $tp.id;
$pids = explode(',', $tp.childids);
?>
<label><a class="label {if !$params.csxz}label-success{else}label-default{/if}" href="{Router::search_url($params, 'csxz', NULL)}">不限</a></label>
<!--调用联动菜单address,pid为动态获取的地区id-->
{linkage code=address pid=0}
<label><a class="label {if in_array($t.ii, $pids)}label-success{else}label-default{/if}" href="{Router::search_url($params, 'csxz', $t.id)}">{$t.name}</a></label>
{/linkage}
</div>
</div>
{if $tp.child}
<div class="form-group row">
<label class="col-md-2 control-label">二级联动</label>
<div class="col-md-10">
<label><a class="label {if $tpid == dr_linkage('address', $params.csxz, 0, 'id')}label-success{else}label-default{/if}" href="{Router::search_url($params, 'csxz', $tpid)}">不限</a></label>
<!--调用联动菜单address,pid为动态获取的地区id-->
{linkage code=address pid=$tpid}
<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>
{/linkage}
</div>
</div>
{/if}注明:
cscz是字段名称
address是联动菜单名称
可以随意改
如果只想让省级出现筛选,其他不出现,代码如下:
<div class="form-group row">
<label class="col-md-2 control-label">联动菜单字段中文</label>
<div class="col-md-9">
<?php
$tp = dr_linkage('address', $params.nativeplace);
if ($tp.pid) {
$tp = dr_linkage('address', $tp.pid);
}
$tpid = $tp.id;
$pids = explode(',', $tp.childids);
?>
<label><a class="label {if !$params.nativeplace || dr_linkage('address', $params.nativeplace, 0, 'child')}label-success{else}label-default{/if}" href="{Router::search_url($params, 'nativeplace', NULL)}">不限</a></label>
<!--调用address,pid为动态获取的地区id-->
{linkage code=address pid=0}
<label><a class="label {if $t.id==$params.nativeplace}label-success{else}label-default{/if}" href="{Router::search_url($params, 'nativeplace', $t.id)}">{$t.name}</a></label>
{/linkage}
</div>
</div>如果想实现其他筛选,可参考这篇文档。