HD框架踩坑之路---第1篇

  • 页面标签详解
    • 1. 循环遍历标签
    • 2. 文本输出标签
    • 3. 日期格式处理标签
    • 4. 码本查询标签(查询码本回显对应的内容)
    • 5. 判断标签(根据判断条件决定要显示的内容)
    • 6. 权限控制标签
    • 7.校验标签
    • 8.其他

页面标签详解

1. 循环遍历标签

循环遍历标签在HD系统内也称之为迭代标签, <common:iterater name=" ${list}" id="item"></common:iterater>iterater意为迭代器,相当于vue中v-for。

  1. ${list}:要遍历的数组,此处为hd系统要展示在页面的JSONArray数据。
  2. item:是数组中的每一项数据(JSONObject),页面渲染数据时,使用 ${item.key},来访问key所对应的value
  3. 示例代码:
 <common:iterate name="ryList" id="item"><tr><td><common:write value="${item.xm}"/></td><td><codebook:translate name="wd.xb" value="${item.xbm}"/></td><td><common:write value="${item.csrq}" format="yyyy-MM-dd" miniDate="false"/></td><td><codebook:translate name="env.bm" value="${item.bmid}"/></td><td><codebook:translate name="env.gw" value="${item.gwid}"/></td><td><codebook:translate name="env.rylb" value="${item.rylbm}"/></td><td>
</common:iterate>

2. 文本输出标签

<common:write value=" ${value}">,用于直接将HD系统存放的数据显示出来。

  1. 示例代码:
<common:write value="${item.sfybd==1?'是':'否'}" /><common> <!--可使用三元运算符-->

3. 日期格式处理标签

使用文本输出标签,添加format属性,就可以在页面中输出日期(format所规定的的格式)

  1. 直接输出日期格式
 <common:write value="${item.csrq}" format="yyyy-MM-dd" miniDate="false" />
  1. 选择固定的日期输出格式
<input type='text' id="rxnd" name='rxnd' style="width:50px;" onClick="wd.edit.datePicker({dateFmt:'yyyy',minDate:'%y',maxDate:'%y'})" value="${rxnd}"/>
<!--
dateFmt 输出的日期格式  可yyyy,yyyy-mm-dd ,yyyy-mm-dd HH24:mm:ss
minDate 最小日期    maxDate  最大日期
记住这个格式,在datePicker中小时只能用大写,用小写是会报错的。
-->

4. 码本查询标签(查询码本回显对应的内容)

  1. 直接文本显示码本
<codebook:translate name="env.rylb" value="${item.rylbm}" /></codebook:translate>
<!--name属性:码本对应的服务地址value属性:查询码本时所对应的key
-->
  1. 下拉框选择码本
<select id="bjid" name="bjid" value="bjid"><option value="">请选择</option><codebook:option name="env.bj" defaultValue="${bjid}"/>
</select>
<!--在码本基础上新增option属性: 用于将码本中查询到的数据,渲染致下列选项里defaultValue属性:默认选中的下拉项
-->
  1. 级联选择码本:
<input type="hidden" name="xyzybj" value="${empty bmid?zyid:bmid}">
<select style="width:120px;" id="bmid" name="bmid" value="${bmid}" defaultValue="${bmid}"><option value="">请选择</option>
</select>
专业
<select style="width:120px;" id="zyid" name="zyid" value="${zyid}"><option value="">请选择</option>
</select>
班级
<select style="width:120px;" id="bjid" name="bjid" value="${bjid}"><option value="">请选择</option>
</select>
<cascadingSelect:write value="env.xy_zy_bj2" filter='{yhid:"${sessionScope["wd.yh"].yhId}"}'/>

5. 判断标签(根据判断条件决定要显示的内容)

<common:equal leftValue="${sfylk==2}" rightValue="true"><script>window.location.href="@service{dest:"env.sys.sys_alert",param:{msg:"您未分班"}}@"</script>
</common:equal>
/*leftValue:判断条件${ not  empty tablehtml} 判断后端传值是否为空rightValue:显示当前标签说明:此为关闭和刷新页面代码<input type="button" name="button" οnclick="wd.display.refreshOpener();wd.display.closeDialog();" value="取消" class="bottom-button">  wd.display.refreshOpener(); // 刷新页面wd.display.closeDialog(); // 关闭页面*/

6. 权限控制标签

<validation:permission value="ry.ry_zj"><input type="button" class="search-button" name="ry_zj" onclick='@service{dest:"ry.ry_zj",show:"wdDialog"}@' value="增加" />
</validation:permission><!--被validation:permission包裹的元素,会根据vlue的值判断是否显示被包裹的元素
-->

7.校验标签

页面上需要的,写在form表单之内之外均可 :<validation:write name=“zy_zj” />
代码:validation.xml文件

身份证校验:
<defination name="sfzh" validator="env.idCard" scope="browser"type="error"><param field="sfzh"/><!-- <param field="csrq" /><param field="xbm" /><param field="sfzjlbm" /> --><param name="msgPrefix" value="" /><!--身份证号--><param name="sfzhNotNull" value="true" /><!--出生年月--><!--<param name="csrqNotNull" value="false" />--><!--性别--><param name="xbNotNull" value="true" /></defination><validation name="gzjd_zj_bc" service="gzjd_zj_bc"><!-- 校验器名称人员_增加_保存 --><check validator="wd.notNull" scope="browser" type="error"><!-- validator="wd.notNull"为校验器类别,这里是非空校验 scope="browser"这个是指前台校验 type="error"表示校验等级为错误等级,错误等级则不能提交表单--><param field="mc" /><!-- 校验器查找的表单name值 --><param name="msgPrefix" value="名称" /><!-- 消息前缀:“姓名不能为空”(非空校验) --><param name="maxLength" value="100" /><!-- 最大长度 --><param name="trim" value="true" /><!-- 去掉前后空格 --></check></validation>

8.其他

  1. 保存成功后跳转到第二页
 <input type="submit" value="保存" name="pjjh_save" class="bottom-button" onclick="@service{name:'pjjh_save',dest:'pjjh_xg',tabNo:'2',submit:true,param:{pjjhid:'${pjjhid}'}}@" /><!--tabNo:跳转属性
-->
  1. 页面上的时间格式,不管是什么,只要使用了系统的标签,均可使用format格式,miniDate=“false” 说明当前年度的格式也正常显示,否则当前年度不显示。

HD框架踩坑总结---第1篇相关推荐

  1. python 同花顺thstrader_Python 踩坑之旅进程篇其三pgid是个什么鬼 (子进程\子孙进程无法kill 退出的解法)...

    代码示例支持 平台: Centos 6.3 Python: 2.7.14 1.1 踩坑案例 pid, ppid是大家比较常见的术语, 代表进程号,父进程号. 但pgid是个什么鬼? 了解pgid之前, ...

  2. Mac安装Drozer apk安全测试框架踩坑记录, ‘openssl/opensslv.h‘ file not found 和implicit declaration of function‘xx‘

    一. 环境准备 查看Drozer项目说明发现环境要求 大致就是: jdk1.7+ python2.7和pip 2不支持python3和pip3 Protobuf 2.6 + Pyopenssl 16. ...

  3. uniapp 电子印章_初探uni-app框架 踩坑

    近些天有接触到uni-app框架,使用HBuilderX软件进行编译,能生成多端项目文件,如微信.百度.支付宝小程序及Android和ios端,记录遇到的问题 1.条件编译 我觉得比较突出的一点功能, ...

  4. wepy框架踩坑日记-逆战

    1.methods 只能声明页面的bind.catch事件,不能声明自定义方法 自定义方法应该跟methods平级 2.wepy开启promise - 在wepy框架中创建模板时,并没有开启promi ...

  5. python flask跨域_Flask框架踩坑之ajax跨域请求实现

    Python flask ajax 请夜影驱动编程小编今天和大家分享后端并且能获得数据,但是...@app.route('/search',methods=[ 'POST']) def search( ...

  6. 【scratchjr】开源项目开发踩坑之环境配置篇

    开源项目地址如下: github托管项目地址:https://github.com/LLK/scratchjr 环境配置时相关错误整合解决方案: 根据文档配置: https://github.com/ ...

  7. 踩坑记录_八月篇_2

    2018-8-20 星期一 1.交易管理:产品信息查询的动态SQL实现.注意:在XML元素中,"<" 和 "&" 是非法的. <select ...

  8. gts分布式事务框架踩坑记录

    分布式项目,一部分实例使用gts管理事务,一部分实例没有事务管理. 导致的问题是被管理的事务发生了回滚,没有被事务管理的数据入库了!!! 这么严重的问题!最终叫我去改,我很有情绪啊.早干嘛去了,这个问 ...

  9. MMDetectionV2 + Colab 超详细教程及踩坑实录

    文章目录 前言 一.环境配置 二.准备自己的数据集 Aug.14更新 三:修改config文件 3.1 文件结构 3.2 (本地)修改config文件 3.2.1 (本地)构造自己模型的权重文件 3. ...

最新文章

  1. 添加和移除disabled属性
  2. pythonsparkpickle_Learning Spark (Python版) 学习笔记(一)----RDD 基本概念与命令
  3. iOS开发 UIPanGestureRecognizer手势抽象类
  4. linux之安装Clion和运行使用总结
  5. 单片机控制小风扇马达c语言,模拟风扇控制电路(单片机C程序设计)
  6. 【原】Docker学习_安装篇(一)
  7. 使用expect编写脚本
  8. 关于Oracle-SQL语句性能优化
  9. 字节跳动斥巨资开发出《Python知识手册》
  10. T6企业管理软件 5.1 - 导出单据列表显示“数据库已达到最大值”“创建临时表失败”
  11. 腾讯程序员的职业晋升答辩之【完全解析】
  12. 你都用 Python 来做什么?
  13. java 闰年闰月_闰四月,说说中国的“闰月”与“闰年”
  14. SQLServer中统计年,季,月,周,日平均值
  15. 如何使用 JS 实现带字母的导航城市列表,以及城市搜索
  16. 文本文件(txt或者ttt格式)数据导入OpenGL中绘制花房子
  17. 台式计算机刚换的显示屏怎么设置,如何设置双屏显示(笔记本电脑双屏切换的快捷键)...
  18. 三子棋?玩我自己的!
  19. mysql表出现crash 修复_MySQL表索引损坏致Crash及修复过程实例
  20. 计算机电路基础第二版张虹,第1章节电路的基本概念与剖析方法——第1讲.ppt

热门文章

  1. JavaScript鼠标移动事件及案例
  2. 浅谈设计模式之工厂方法模式
  3. zookeeper原理及应用
  4. mui刷新当前页面和返回当前页面刷新处理
  5. 我的世界服务器无限圈地指令,我的世界OP圈地指令大全_我的世界领地指令 - 我的世界中文站...
  6. Tarjan LCA
  7. python取整的几种常见方式-向上取整、向下取整、四舍五入取整、int()取整、“//”整除取整
  8. SQL语句优化(落实到代码,不绕弯子)
  9. Java中单例对象不会被GC回收
  10. 个、十、百、千、万、亿、兆、京、垓、秭、穰、沟、涧、正、载