织梦5.7自定义表单实现多级城市联动的方法

跟版网接到一个订单,客户要求增加表单,并做城市的选择,没办法就想着研究下这个 自定义表单 如何做到 城市联动 了。要达到织梦默认没有的功能,这就需要对织梦 自定义表单 进行二次开发。今天笔者就跟大家分享一下如何在 织梦自定义 表单添加城市二级三级

  跟版网接到一个订单,客户要求增加表单,并做城市的选择,没办法就想着研究下这个自定义表单如何做到城市联动了。要达到织梦默认没有的功能,这就需要对织梦自定义表单进行二次开发。今天笔者就跟大家分享一下如何在织梦自定义表单添加城市二级三级联动。

刚开始, 我先是到百度搜索了一下《怎么实现织梦自定义表单城市联动?》找到了不少方法。

织梦自定义表单二次开发

  大家都知道,百度上的方法虽然很多,但是答案参差不齐,我们也一时不能判断哪些答案是对的,所以只能一个个尝试了。经历过千辛万苦的测试,终于找到了方法!
 方法如下:


1、打开修改的文件:dede/templets/diy_field_add.htm 大概146 行,很明显已经注释掉,我们把注释去掉,
修改后如下图。改好后,保存即可!

在织梦自定义表单怎么添加联动类型


2、修改的文件:dede/templets/diy_field_edit.htm 大概在127行,很明显已经注释掉,我们把注释去掉,然后放到<多选框>下面。

在织梦自定义表单怎么添加联动类型

完成以上两步操作,在自定义表单中就有了联动类型选择了。


第二:在织梦自定义表单中做城市二级三级联动
自定义表单实现后如下图:

在织梦自定义表单中做城市二级三级联动

1、先看织梦的联动类别管理,如下图

在织梦自定义表单中做城市二级三级联动

点击地区后,向下拉,有3226条,全国各地包括港澳台都有的

在织梦自定义表单中做城市二级三级联动

另外我们也可以看到地区的组名,是nativeplace,后面我们要用到

在织梦自定义表单中做城市二级三级联动

2、点击自定义表单,新建一个字段,名字填好你想要的,比如说&ldquo;户口所在地&rdquo;,下面的字段名称要填写nativeplace,选择联动类型,而且下面的默认值也要填写nativeplace,如下图


3、点击确定,保存即可,然后就是前台的调用,这个就不多说了,相信会有织梦自定义表单的朋友都会吧。

上面说了怎么实现城市二级三级联动,但是大家提交后会问题又来了,城市名称只能输出数字枚举值,那么我们怎么让织梦自定义表单做城市二级三级联动,后台类型名称显示数字解决方法呢?
请看这篇文章:
http://www.genban.org/news/dedecms-7028.html

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

dedecms织梦默认的TAG标签不是很灵活。有时候我们的标签需要进行一个分类,能不能像{dede:arclist}标签的自定义属性(如:flag=c,h),这样全站调用的时候更灵活。 全站调用TAG标签方法一般是: {dede:tag row='100' sort='new' getall='1'}a target="_blank
未审核文档的TAG会显示在TAG列表页面, 固然点击进入TAG时, 相关的未审核文章不会显示出来, 这样对用户体验是很不好的. DEDECMS暂时没有提供这个功能,所以要解决这个问题, 让DEDECMS不显示未审核文档的TAG, 就要修改TAG的显示库文件 tag.lib.php。 方法一 打
我们都知道DEDECMS生成的文件夹是按天生成的,只要传了图片就会自动建立个年月日的文件,centos系统下,都是随便排序的,很难找到对应文件夹,如果要按顺序排列,要怎么操作呢? 一、文件管理器: 修改 /dede/templets/file_manage_main.html $dh = dir($inp
我们有时候需要对织梦文档的点击量进行批量维护,比如采集来的文章,点击量都为0,需要批量修改,可以用到如下方法1。 1、在数据库里运行下面的代码就可以了,文章的点击量变得随机从500到1000 UPDATE dede_archives SET click=FLOOR(500 + (RAND() * 1000))
用过dedecms的朋友都知道,织梦cms后台系统基本参数里是无法直接上传图片的,我们更换logo图只能到ftp里替换,非常的不方便,我们如果想直接在系统基本参数里上传,要怎么处理呢?在这里需要对代码进行修改,具体流程如下: 实现方法,打开/dede/templets/sy
dedecms要想调用所有子栏目是没有这个标签的,要调用只可用sql标签,reid表示子栏目,channeltype=6表示模型为商品,sortrank表示按排序升序.小的放前面 {dede:sql sql=Select * from `dede_arctype` where reid0 and channeltype=6 ORDER BY sortrank limit 15}