当前位置:首页 > 文章 > 帝国CMS > 正文内容

帝国CMS7.5实现地区三级联动并且前台可地区筛选的教程

3年前 (2022-10-21)帝国CMS9181

第一步:后台添加三个数据表字段

字段名:pro  字段标识:省       输入表单替换html代码:

<select name="pro"></select>

字段名:city  字段标识:市       输入表单替换html代码:

<select name="city"></select>

字段名:area  字段标识:区域       输入表单替换html代码:

<select name="area"></select>

第二步:建立完毕后,在到 管理系统模型修改生成相应的表单!

三个字段设为 提交项 可添加 修改         列表显示  ;结合项

第三步:打开e/admin/AddNews.php 把以下代码粘贴到结尾的随便位置即可

<script type="text/javascript" src="selects.js"></script>
<script type="text/javascript" src="data_china.js"></script>
<script type="text/javascript">
var s = selects;
//获取对象
var p = document.getElementsByName('pro')[0];//省
var c = document.getElementsByName('city')[0];//市
var a = document.getElementsByName('area')[0];//区
//绑定数据
s.bind(p,province);
s.bind(c,city);
s.bind(a,area);
//确定从属关系
s.parent(p,c);
s.parent(c,a);
//设置默认值
s.selected(p,{value:'<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[pro]))?>'});
s.selected(c,{value:'<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[city]))?>'});
s.selected(a,{value:'<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[area]))?>'});
</script>

第四步:下载附件两个JS上传到e/admin/    JS为UTF-8编码,其他请自己转码

到此后台已经实现添加内容三级联动

在前台显示位置添加一下代码可筛选查,注意两个JS路径

<script type="text/javascript" src="[!--news.url--]js/selects.js"></script>
       <script type="text/javascript" src="[!--news.url--]js/data_china.js"></script>
          
               <form method="get" action="[!--news.url--]e/action/ListInfo.php">
               <input value="10" type="hidden" name="mid">
              <input value="17" type="hidden" name="classid">
              <input value="1" type="hidden" name="ph">
              <input value="12" type="hidden" name="tempid">
                 
                <select name="pro"></select>
                 <select name="city"></select>
                 <select name="area"></select>
                 <INPUT value="确定" type="submit" name="提交">
                </FORM>
            <script type="text/javascript">
var s = selects;
//获取对象
var p = document.getElementsByName('pro')[0];//省
var c = document.getElementsByName('city')[0];//市
var a = document.getElementsByName('area')[0];//区
//绑定数据
s.bind(p,province);
s.bind(c,city);
s.bind(a,area);
//确定从属关系
s.parent(p,c);
s.parent(c,a);
//设置默认值
s.selected(p,{value:'<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[pro]))?>'});
s.selected(c,{value:'<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[city]))?>'});
s.selected(a,{value:'<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[area]))?>'});
</script>

注:四个默认字段mid是模型ID,classid是栏目ID,tempid是列表所使用的模板标签ID,ph是结合项,ph参数是必须等于1的,表示使用结合项,否则不能筛选

扫描二维码推送至手机访问。

版权声明:本文由蓝博发布,如需转载请注明出处。

本文链接:https://www.blueboss.cn/p/637.shtml

“帝国CMS7.5实现地区三级联动并且前台可地区筛选的教程” 的相关文章

帝国cms模板内容页灵动标签调用当前栏目文章排除当前文章

帝国cms模板内容页灵动标签调用当前栏目文章排除当前文章

解决方法:调用当前栏目信息,栏目ID用:'selfinfo',排除当前信息标签附加sql条件参数用:"id<>'$navinfor[id]'" 举例: [e:loop={'selfinfo',10,0,0,"id<>'$navinfor[id]'"}] <a href...

帝国CMS一些调用URL地址主要会员中心为主!

帝国CMS一些调用URL地址主要会员中心为主!

帝国cms模板网这边一些关于帝国CMS系统的URL地址,特别是会员中心这一块,方便大家使用! 会员中心: 控制面板:/e/member/cp/ 我的状态: /e/member/my/ 修改资料:/e/member/EditInfo/ 我的购买记录:/e/member/buybak/ 我的下载记录:/...

帝国CMS灵动标签从第二条信息开始

帝国CMS灵动标签从第二条信息开始

正常调用文章信息,是从第一条信息开始调用的,或者是逐条调用,那么,假如我们需要从第二条信息开始调用  [e:loop={栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序}] [e:loop={栏目ID/专题ID,'1,2',操作类型,只显示有标题图片,附加SQL条件...

帝国CMS灵动标签调用副表字段内容

帝国CMS灵动标签调用副表字段内容

在灵动标签循环内用SQL读取副表内容。下面以读取新闻副表中的newstext字段为例: [e:loop={0,1,3,0}] <?php $fr=$empire->fetch1("select newstext from {$dbtbpre}ecms_news_data_{$bqr[s...

帝国cms内容页调用相关阅读文章

帝国cms内容页调用相关阅读文章

帝国CMS调用相关信息文章的方法,帝国cms怎么调用相关阅读文章呢? 调用代码: [e:loop={"select * from phome_ecms_news where classid={$ecms_gr['classid']} order by onclick desc limit 5",0...

帝国cms灵动标签调用信息标题分类名称和地址

帝国cms灵动标签调用信息标题分类名称和地址

帝国cms灵动标签调用信息标题分类名称和地址的方法!一起来了解一下吧: 实现方法如下: 在需要调用的页面模板里加入以下代码: [e:loop={1,10,0,0}] 标题分类:<a href="<?=sys_ReturnBqInfoTypeUrl($bqr[ttid])?>"&g...