欢迎您光临自学哈网,只为分享网络知识教程,供大家学习参考!

「自学哈网」帝国CMS7.5实现地区三级联动并且前台可地区筛选的教程

作者 : 自学哈 本文共2312个字,预计阅读时间需要6分钟 2022-11-26 共130人阅读
也想出现在这里? 联系我们

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

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

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

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

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

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

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

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

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

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

<scripttype="text/javascript"src="selects.js"></script>
<scripttype="text/javascript"src="data_china.js"></script>
<scripttype="text/javascript">
vars=selects;
//获取对象
varp=document.getElementsByName('pro')[0];//省
varc=document.getElementsByName('city')[0];//市
vara=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路径

<scripttype="text/javascript"src="[!–news.url–]js/selects.js"></script>
<scripttype="text/javascript"src="[!–news.url–]js/data_china.js"></script>

<formmethod="get"action="[!–news.url–]e/action/ListInfo.php">
<inputvalue="10"type="hidden"name="mid">
<inputvalue="17"type="hidden"name="classid">
<inputvalue="1"type="hidden"name="ph">
<inputvalue="12"type="hidden"name="tempid">

<selectname="pro"></select>
<selectname="city"></select>
<selectname="area"></select>
<INPUTvalue="确定"type="submit"name="提交">
</FORM>
<scripttype="text/javascript">
vars=selects;
//获取对象
varp=document.getElementsByName('pro')[0];//省
varc=document.getElementsByName('city')[0];//市
vara=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的,表示使用结合项,否则不能筛选


本站声明:
本站所有资源来源于网络,分享目的仅供大家学习和交流!如若本站内容侵犯了原著者的合法权益,可联系邮箱976157886@qq.com进行删除。
自学哈专注于免费提供最新的分享知识、网络教程、网络技术的资源分享平台,好资源不私藏,大家一起分享!

自学哈网 » 「自学哈网」帝国CMS7.5实现地区三级联动并且前台可地区筛选的教程
也想出现在这里? 联系我们
© 2022 Theme by - 自学哈网 & WordPress Theme. All rights reserved 浙ICP备2022016594号