微擎tpl_form_field_location_category实现自定义下拉3级联动功能

发布时间:
2020-03-13 22:38:14

在给客户做项目定制开发时,经常会用到数据联动功能。微擎自带的tpl_form_field_location_category函数可以实现自定义下拉3级联动的功能,不过文档上写的比较简单,于是去读程序源代码。

tpl_form_field_location_category() – 微信门店类目选择三级联动

说明:
tpl_form_field_location_category($name, $values = array(), $del = false)
参数:
$name 表单字段的名称,同一页面不能为空
$values 表单input值
$del 是否显示删除按钮
$values详解
$values[‘cate’] = ‘美食’;
$values[‘sub’] = ‘江浙菜’;
$values[‘clas’] = ‘上海菜’;
示例:
{php echo tpl_form_field_location_category(‘location_category’);}

tpl_form_field_location_category()所在位置:/web/common/tpl.func.php,其基本的数据来源于一个JS文件,通过console发现这个JS文件的路径:/web/resource/js/app/location.js在最新版本中是不存在的。想到会不会在某个目录下还有js文件存档,于是直接putty:find /www/wwwroot -name location.js 果然发现在存在addons/we7_coupon/template/style/js/location.js,引入后3级联动功能便可正常使用了。但是现在的问题是默认的location数据并不是我们想要的3级联系,那么就需要我们自己定义location数据,找到了样例用自己的数据按照现有的格式进行封装便可以正常使用了。这里面发个demo:

你可以根据自己的需要引入固定格式的数据,如果是动态的数据,也可以像我一样通过include $this->template()引入模板文件,然后location数据处调用封装api,再在有使用到三级下拉联动的地方javascript引入进来即可。

实现代码:

$data数据通过2次foreach循环,然后json_encode返回即可。

你可能感兴趣的文章:

  • 暂无相关文章

共有 0 条评论