报表知识库
我要提问

填报表编辑框数据校验不通过填报单元格值置空

需求说明:

润乾报表提供了输入校验的功能,若用户输入的值不满足校验规则,就会弹出校验提示。用户需要为在弹出校验提示之后,清空编辑框的内容。

需求实现:

重写js函数_submitEditor2(),此函数在当前编辑单元格失去焦点的时候就会被调用。

重写该函数需要修改以下两处:

1.若该单元格设置了填报数据类型,数据类型校验不通过,在确定单元格焦点前清空编辑框的值。

if( ! _checkDataType( inputDataType, value, “” ) ) {

editor.value=”";

editor.focus();

if( table.selectText != null ) editor.select();

return false;

}

2.若该单元格设置了校验规则,填报数据不符合校验规则,在确定单元格焦点前清空编辑框的值。

if( !eval( dataValid ) ) {

……

if( editor.style ) {

editor.style.display = “block”;

editor.value=”";

editor.focus();

if( table.selectText != null ) editor.select();

}

else editor.Table.style.display = “block”;

return false;

}

实现效果:

设计报表模板如下:

模板中既包括数据类型校验也包括合法性校验规则校验。

报表发布页面中重新_submitEditor2(),并引入校验规则需要的js,即可。

数据类型校验:

点击确定后,单元格内容置空: