泛微E9系统,银行卡每4位空一格的简单实现方法
1、理清需求点
触发节点:在提交或者保存的时候,银行卡号触发每4位空一格的效果。
规避问题:申请人本身填写的银行卡号带有空格;或者流程执行完每4位空一格的效果的效果后又被退回,再执行每四位空一格时造成分割紊乱的情况。
2、解决要规避的问题
思路:在执行每4位空一格的效果的前,先自动去掉银行卡号已有的空格,避免重复生成。
3、代码实现(示例:明细表2中的银行卡号每四位空一格)
<script>
jQuery(document).ready(function () {
WfForm.registerCheckEvent(WfForm.OPER_SAVE+","+WfForm.OPER_SUBMIT,function(callback){//提交或保存时的钩子事件
var BLE= WfForm.getDetailRowCount("detail_2");//获取明细表2的行数,用于银行卡每4位一空格的显示
for(var rowIndex=0;rowIndex<BLE;rowIndex++){//遍历明细表2
var bank1 = WfForm.getFieldValue("field13375_"+rowIndex);//获取明细表2的银行账号值
var bank3 = bank1.replace(/\s+/g, "");//先去掉已有的空格,避免重复生成空格
var bank2 = bank3.replace(/(.{4})/g, "$1 ");//实现每四位空一格的效果
WfForm.changeFieldValue("field13375_"+rowIndex, {value:bank2}); //将每四位空一格的值更新到银行账号
}
callback();
})
})
</script>