dz插件中用于校验的js放在哪
发布网友
发布时间:2022-06-28 08:57
我来回答
共1个回答
热心网友
时间:2023-10-09 01:55
方法/步骤
1
实现思路
在控件的编辑结束事件中,将字符串格式使用正则表达式描述出来,然后使用js的test方法判断控件的值与正则表达式是否匹配。
test方法的意义是返回一个 Boolean 值,它指出在被查找的字符串中是否存在某种模式,存在则返回true,否则返回false;
使用方式为:rgexp.test(str),其中rgexp表示包含正则表达式模式或可用标志的正则表达式对象,str表示要在其上测试查找的字符串。
2
定义正则表达式
标准的文号由发文机关代字、发文年份和文件顺序号三个部分组成,因此对应的正则表达式为[\u4e00-\u9fa5]\(\d{4}\)[1-9]\d*号$。
3
编辑结束事件设置
给控件添加编辑结束事件,js如下:
var ch = this.getValue();
var patrn = /[\u4e00-\u9fa5]\(\d{4}\)[1-9]\d*号$/;
if(!patrn.test(ch)){
FR.Msg.alert(FR.i18n.Alert, "文号格式错误,正确文号如:国土资函(2010)88号");
return false;
}
注:匹配不成功后return false,焦点仍停留在当前控件上。
点击填报预览,如果下拉框中选择的数据或者编辑的内容不符合正则表达式:[\u4e00-\u9fa5]\(\d{4}\)[1-9]\d*号$,就会弹出警告并停留在当前控件。
若是控件类型中有填写规则选项,可以直接设置文本控件>属性>自定义填写规则来实现。