帝国CMS地区联动插件网上很多,但如何配合筛选功能却没有。看到论坛上很多人需要找这个,我的站长站www.wdzzz.com为大家分享一款二次开发的纯JS版的地区联动筛选功能。
首先我们来看看效果
下拉框效果
横向A链接效果
帝国CMS地区联动筛选开发方法
1、首先我们需要下载用到JS插件库,下载地址在下方
帝国CMS地区联动筛选插件
首先我们来看看帝国CMS地区联动筛选插件的效果下拉框效果横向A链接效果帝国CMS地区联动筛选插件方法1、新建3个省、市、区字段2、修改模型表单,加载JS、css样式3、...
2、然后我们新建三个字段,来储存地区内容,字段都为文本输入框。
pro 省份
<div class="m_zlxg" id="shenfen"> <p title=""><?=$ecmsfirstpost==1?"选择省份":ehtmlspecialchars(stripSlashes($r[pro]))?></p> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="pro" type="hidden" id="pro" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[pro]))?>" size="">
city 城市
<div class="m_zlxg" id="chengshi"> <p title=""><?=$ecmsfirstpost==1?"选择城市":ehtmlspecialchars(stripSlashes($r[city]))?></p> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="city" type="hidden" id="city" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[city]))?>" size="">
area 区县
<div class="m_zlxg" id="quyu"> <p title=""><?=$ecmsfirstpost==1?"选择城市":ehtmlspecialchars(stripSlashes($r[area]))?></p> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="area" type="hidden" id="area" value="<?=$ecmsfirstpost==1?"":ehtmlspecialchars(stripSlashes($r[area]))?>" size="">
3、最后是系统模型表单的代码
<table width='100%' align=center cellpadding=3 cellspacing=1 bgcolor='#DBEAF5' id="dq"> 这里为你的表单代码 <input id="sfdq_num" type="hidden" value="" /> <input id="csdq_num" type="hidden" value="" /> <link rel="stylesheet" type="text/css" href="/e/extend/address/address.css" > <script type="text/javascript" src="/e/extend/address/jquery-1.7.2.min.js"></script> <script type="text/javascript" src="/e/extend/address/address.js"></script> <script type="text/javascript"> $(function(){ $("#dq").sjld("#shenfen","#chengshi","#quyu"); }); </script>
主要给表单的table加了一个ID=dq和加载了需要用到JS、CSS。
到此后台的地区联动就完成了。
大致效果是这样了,具体的样式可以自行修改address.CSS的样式。
下面我们来看看纯JS版的地区联动筛选功能前台该如何调用了,我的站长站www.wdzzz.com为大家继续讲解。
前台下拉样式代码
<div class="gp" id="dq"> <form method="get" action="[!--news.url--]e/action/ListInfo.php" class="dqform"> <input value="12" type="hidden" name="mid"> <input value="3" type="hidden" name="classid"> <input value="1" type="hidden" name="ph"> <div class="m_zlxg" id="shenfen"> <p title="">选择省份</p> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="pro" type="hidden" id="pro" value=""> <div class="m_zlxg" id="chengshi"> <p title="">选择城市</p> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="city" type="hidden" id="city" value=""> <div class="m_zlxg" id="quyu"> <p title="">选择城市</p> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="area" type="hidden" id="area" value=""> </FORM> </div> <input id="sfdq_num" type="hidden" value="" /> <input id="csdq_num" type="hidden" value="" /> <link rel="stylesheet" type="text/css" href="/e/extend/address/address.css" > <script type="text/javascript" src="/e/extend/address/address.js"></script> <script type="text/javascript"> $("#dq").sjld("#shenfen","#chengshi","#quyu"); $("#chengshi , #quyu").hide(); window.onload = function() { var pro = "<?php echo $_GET["pro"]?>"; var city = "<?php echo $_GET["city"]?>"; var area = "<?php echo $_GET["area"]?>"; if(pro != ""){ $("#shenfen").find("p").text(pro); }else{ $("#shenfen").on("click","li",function(){ $("#chengshi").show(); }) } if(city != ""){ $("#chengshi").show(); $("#chengshi").find("p").text(city) }else{ $("#chengshi").on("click","li",function(){ $("#quyu").show(); }) } if(area != ""){ $("#quyu").show(); $("#quyu").find("p").text(area) } $("#chengshi").on("click","li",function(){ $("#quyu").show(); }) }; $("#quyu").on("click","li",function(){ $(".dqform").submit(); }); </script>
主要利用的form表单提交+JS来达到下拉筛选的效果。
前台A链接筛选代码
<div class="designer-tip" id="dq"> <form method="get" action="[!--news.url--]e/action/ListInfo.php" class="dqform"> <input value="[!--self.classid--]" type="hidden" name="classid"> <input value="1" type="hidden" name="ph"> <div class="m_zlxg" id="shenfen"> <p>选择省份</p> <span>选择省份</span> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="pro" type="hidden" id="pro" value=""> <div class="m_zlxg" id="chengshi"> <p>选择城市</p> <span>选择城市</span> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="city" type="hidden" id="city" value=""> <div class="m_zlxg" id="quyu"> <p>选择城市</p> <span>选择城市</span> <div class="m_zlxg2"> <ul> </ul> </div> </div> <input name="area" type="hidden" id="area" value=""> </FORM> </div> <input id="sfdq_num" type="hidden" value="" /> <input id="csdq_num" type="hidden" value="" /> <link rel="stylesheet" type="text/css" href="/e/extend/address/address-a.css" > <script type="text/javascript" src="/e/extend/address/address-a.js"></script> <script type="text/javascript"> $(function(){ $("#dq").sjld("#shenfen","#chengshi","#quyu"); $(".m_zlxg2").on("click","li",function(){ $(this).parents(".m_zlxg2").find("li").removeClass("active"); $(this).addClass("active"); }); $("#chengshi , #quyu").hide(); $("#shenfen").on("click","li",function(){ $("#chengshi").show(); }) $("#chengshi").on("click","li",function(){ $("#quyu").show(); }) $("#quyu").on("click","li",function(){ $(".dqform").submit(); }); }); </script>
至此全部分享完毕。