泛微E9开发 限制整型、日期型、附件型字段的取值范围

本文介绍了如何在表单中通过JavaScript和后端设置,对数值、日期和文件类型进行范围限制,确保数据的有效性,例如限制年度评分在0-100分,日期选择在最近一周内,文件类型仅限PDF和DOC。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、功能背景

在用户进行输入时,通过控制输入数据的范围来实现实际效果,如上级管理者对下级员工进行年度评分时,只能输入1~100分,现在表单中新增三种类型不同的字段,具体如下所示:
在这里插入图片描述

2、展示效果

  1. 限制整数的范围在0~100之间
    在这里插入图片描述

  2. 限制日期的选择范围在最近一周
    在这里插入图片描述

  3. 限制文件的类型只能是pdf
    .默认的文件类型为所有文件
    在这里插入图片描述
    限制后的文件类型
    在这里插入图片描述

3、实现方式

1.限制数值类和日期型数据的范围
<script>
  
  var zsxF = WfForm.convertFieldNameToId("zsx");
  var rqxF = WfForm.convertFieldNameToId("rqx");
  var fjxF = WfForm.convertFieldNameToId("fjx");
  
  jQuery(document).ready(function(){
    debugger;
    
    WfForm.bindFieldChangeEvent(zsxF,function(obj,id,value){
      if(value == ""){
        
      }else if(value >= 100 || value <= 0){
        Dialog.alert("请输入0~100之间的数值");
        setTimeout(function () { 
          WfForm.changeFieldValue(zsxF,{value:""}); 
        }, 3000);
        
      }else{
        
      }
    });
    
    WfForm.bindFieldChangeEvent(rqxF,function(obj,id,value){
      var nowDate = new Date();
      var selDate = new Date(value);
      // 计算两个日期的时间差(毫秒)
      var timeDiff = Math.abs(nowDate.getTime() - selDate.getTime());
      
      // 计算天数
      var diffdays = Math.ceil(timeDiff / (1000 * 3600 * 24));
      if(Math.abs(diffdays) >=7){
        Dialog.alert("请选择最近一周内的日期");
        setTimeout(function () { 
          WfForm.changeFieldValue(rqxF,{value: "",specialobj:[{id:"",name:""}]});
        }, 3000);
      }
    });
    
  })   
</script>

2. 限制文件型的格式

通过【后端】-【流程引擎】,找到对应的路径-【基础设置】-【附件设置】,设置“限制附件上传格式”为pdf即可,如果还要增加doc格式的文件,那么应该设置成“pdf,doc”,多个文件格式中间用“,”分开。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进击的巨无霸汉堡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值