织梦二次开发

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 928|回复: 0

[函数] 织梦“获取枚举的select表单”函数GetEnumsForm(参数)教程

[复制链接]

1046

主题

1109

帖子

5334

积分

超级版主

Rank: 8Rank: 8

金币
256
贡献
3959
发表于 2015-11-5 16:08:17 | 显示全部楼层 |阅读模式
  所在文件:/include/enums.func.php

  函数名:GetEnumsForm($egroup, $evalue=0, $formid='', $seltitle='')

  参数:$egroup 联动组,也就是缓存组名,$evalue 枚举值,$formid  表单ID,$seltitle  选择标题

  返回值:成功后返回一个枚举表单

  这个功能的功能在织梦系统dedecms里面的使用频率不高,在织梦的会员系统里面会使用到,虽然,使用不多,还是要详细分析一下这个函数。

代码分析开始:

  1. 引入分类缓存枚举文件,并判断一下表单id是不是为空:

引入枚举分类

引入枚举分类


  2.设置表单select项:
  1. $forms = "<select name='$formid' id='$formid' class='enumselect'>\r\n";
复制代码


  注意,这里面的css要结果调用这个函数的模板里面的类使用,否则,这个类就没有什么作用了。

  3.初始化option基本选项:
  1. $forms .= "\t<option value='0' selected='selected'>--请选择--{$seltitle}</option>\r\n";
复制代码


  4. 遍历枚举选项,代码如下:

遍历枚举选项

遍历枚举选项


  设置上下级枚举名的连接字段:
  1. $prefix = ($v > 500 && $v%500 != 0) ? '└─ ' : '';
复制代码

  如果是三级选择的话,则单独设置三级选择的连接符号:
  1. if (preg_match("#\.#", $v)) $prefix = ' &nbsp;&nbsp;└── ';
复制代码


  5. 组装选中时的选项和没有选中时的选项,代码如下:

选项组装

选项组装


  其实,这个函数比较简单,就是遍历某一个分类的php文件,例如,分类信息的分类infotype.php。

  6. 最后,拼合成这个select:
  1. $forms .= "</select>";
复制代码


  返回拼装起来的form表单。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|织梦二次开发

GMT+8, 2019-10-18 03:08 , Processed in 0.238655 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表