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

1、功能背景

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

2、展示效果

  1. 限制整数的范围在0~100之间

  2. 限制日期的选择范围在最近一周

  3. 限制文件的类型只能是pdf

    .默认的文件类型为所有文件

    限制后的文件类型

3、实现方式

1.限制数值类和日期型数据的范围
javascript 复制代码
<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",多个文件格式中间用","分开。

相关推荐
paopaokaka_luck41 分钟前
基于SpringBoot+Uniapp的健身饮食小程序(协同过滤算法、地图组件)
前端·javascript·vue.js·spring boot·后端·小程序·uni-app
Villiam_AY44 分钟前
Redis 缓存机制详解:原理、问题与最佳实践
开发语言·redis·后端
患得患失9491 小时前
【前端】【vscode】【.vscode/settings.json】为单个项目配置自动格式化和开发环境
前端·vscode·json
UQWRJ1 小时前
菜鸟教程R语言一二章阅读笔记
开发语言·笔记·r语言
飛_1 小时前
解决VSCode无法加载Json架构问题
java·服务器·前端
岁忧3 小时前
macOS配置 GO语言环境
开发语言·macos·golang
朝朝又沐沐4 小时前
算法竞赛阶段二-数据结构(36)数据结构双向链表模拟实现
开发语言·数据结构·c++·算法·链表
YGY Webgis糕手之路4 小时前
OpenLayers 综合案例-轨迹回放
前端·经验分享·笔记·vue·web
魔尔助理顾问4 小时前
系统整理Python的循环语句和常用方法
开发语言·后端·python
90后的晨仔4 小时前
🚨XSS 攻击全解:什么是跨站脚本攻击?前端如何防御?
前端·vue.js