JS实现限制文本框控件文本长度

目录:

1. 问题描述

自带长度校验无法即时进行提醒和处理,只有在失去焦点时才会提醒,并且无法阻止录入。可在实际填报过程中,对于单据类的编号的填报,可能编码长度需要固定以标准格式,并且在录入过程中实时对录入数据准确性的提醒和提示,可以在录入过程中,及时监控录入文本长度,并在超过设定的长度时,做提醒和录入失效处理。

222

2. 解决方案

添加文本框编辑后事件,实时监控当前文本框文本长度,录入后,如果长度大于设定的长度,则不录入,以及进行弹窗提醒。

3. 示例

右击文本控件所在单元格,选择控件设置>事件编辑,添加编辑后事件,如下:
222

var data=this.getValue(); //获取到单元格的值 var len=data.length; //判断值的长度 if(len>10) { contentPane.setCellValue("B2",null,data.substr(0,10)); //如果单元格值长度超过10位,就截取前10位 //B2对应报表中,控件所在单元格位置 alert("最长为10位"); }

编辑后事件:会在每输入一个字符后触发,利用此时机,对目前文本框的长度进行校验

var len=data.length;如果len 当前长度>10 的时候,contentPane.setCellValue("C4",null,data.substr(0,10));  将前十位字符串重新赋值给文本框!并弹窗提示,“最长为十位”!

另外,对于需要控制的长度,可以建立模板参数,例如选择模板>模板参数,添加如下参数:
222

并在js编辑处,添加参数引用模板参数后进行长度判断:
222

附件列表


主题: 二次开发

文档内容仅供参考,如果你需要获取更多帮助,请咨询帆软技术支持
关于技术问题,您还可以通过帆软论坛获取帮助,论坛上有非常多的大神,有些水平比帆软工程师还要高哦。
若您还有其他非技术类问题,可以联系帆软传说哥(微信ID:frbiaoge)