当前位置: 首页 > news >正文

泛微E9开发 校验日期型字段是否符合要求

校验日期型字段是否符合要求

    • 1、需求分析及展示效果
      • 1.1、需求确认
      • 1.2、展示效果
    • 2、实现方法
    • 3、扩展知识——js日期相关函数

1、需求分析及展示效果

1.1、需求确认

“填报时间”是一个日期型字段,用户提出需求只能选择每个月的第二个周二,选择其他日期的话就弹出提示框提醒用户重新选择,“填报时间”不能设置为只读并且赋值为当月,因为用户选择的填报时间可能会往后推,即10月申请11月的流程。

1.2、展示效果

  1. 非选择月的第二个周二,弹出提示框
    在这里插入图片描述
    在这里插入图片描述
  2. 选择月的第二个周二,无提示信息
    在这里插入图片描述

2、实现方法

代码块

<script>debugger;var tbsjField = WfForm.convertFieldNameToId("tbsj");//按照yyyy-mm-dd格式返回日期型字符串function formatDate(dateStr) {  // 使用正则表达式将日期字符串拆分成年、月、日  const [year, month, day] = dateStr.split('-').map(num => parseInt(num, 10));  // 使用 padStart 方法确保月份和日期是两位数  const formattedMonth = month.toString().padStart(2, '0');  const formattedDay = day.toString().padStart(2, '0');  return `${year}-${formattedMonth}-${formattedDay}`;  }  //获取所选月份的第二个周二function GetSecondTuesday(thisDate){var date = new Date(thisDate);var thisMonth = date.getMonth() + 1;var firstDay = `${date.getFullYear()}-${thisMonth}-1`;  //本月第一天var curDay = new Date(firstDay);var secondTuesday;  //保存第二个周二的日期//获取第二个周二的日期,从1号开始循环while((curDay.getMonth()+1) == thisMonth){var dayOfWeek = curDay.getDay();      if(dayOfWeek == 2){//如果有值,说明已经过了第一个周二var dateStr = `${curDay.getFullYear()}-${curDay.getMonth()+1}-${curDay.getDate()}`; if(secondTuesday){secondTuesday = formatDate(dateStr);break;}else{secondTuesday = formatDate(dateStr);}}curDay.setDate(curDay.getDate() + 1);}return secondTuesday;}jQuery(document).ready(function(){       WfForm.bindFieldChangeEvent(tbsjField,function(obj,id,value){var date = new Date(value);var selMonth = date.getMonth() + 1;var secondTuesday = GetSecondTuesday(value);if(value != secondTuesday){Dialog.alert("【请确认本月的第二个周二】   "+selMonth+"月的第二个周二是"+secondTuesday);}});})
</script>

3、扩展知识——js日期相关函数

	var myDate1 = new Date();//创建时间;//输出:Thu Oct 17 2024 10:42:21 GMT+0800 (中国标准时间)       var setDate = '2024-09-06';//输出:'2024-09-06'var myDate2 = new Date(setDate);//将指定日期转为标准日期格式;//输出:Fri Sep 06 2024 08:00:00 GMT+0800 (中国标准时间)var year = myDate2.getYear();//(2位)//获取当前年份;//输出:124//它返回的是从1900年起的年数偏移量,而不是实际的年份。var fullyear = myDate2.getFullYear();//(4位)//获取完整年份;//输出:2024var month = myDate2.getMonth();//(0-11,0是1月)//获取月份;//输出:8var day1 = myDate2.getDate();//(1-31日)//获取当前日期;//输出:6var day2 = myDate2.getDay();//(0-6,0是星期天) //获取当前星期//输出:5

相关文章:

泛微E9开发 校验日期型字段是否符合要求

校验日期型字段是否符合要求 1、需求分析及展示效果1.1、需求确认1.2、展示效果 2、实现方法3、扩展知识——js日期相关函数 1、需求分析及展示效果 1.1、需求确认 “填报时间”是一个日期型字段&#xff0c;用户提出需求只能选择每个月的第二个周二&#xff0c;选择其他日期…...

ubuntu安装Vim和net-tools和htop

合并安装&#xff0c;快捷方便 sudo apt update sudo apt install net-tools vim htop在Ubuntu中安装Vim可以通过终端使用以下命令完成&#xff1a; sudo apt update sudo apt install vim这两条命令首先更新了本地的包索引&#xff0c;然后安装了Vim文本编辑器。 安装完成后…...

每天10个js面试题(六)

1、js数组方法&#xff1f; Array.push()此方法是在数组的后面添加新加元素&#xff0c;此方法改变了数组的长度Array.pop()此方法在数组后面删除最后一个元素&#xff0c;并返回数组&#xff0c;此方法改变了数组的长度 Array.shift()此方法在数组后面删除第一个元素&#xf…...

AIGC技术的学习 系列二

文章目录 前言一、AIGC是什么?1.1. 基本概念1.2机器学习分类二、 语言模型2.1. 基于统计的语言模型。2.2. 基于神经网络的语言模型。2.3. 基于预训练机制的的语言模型/大语言模型三、读入数据3.1. 不得不说的Transformer3.2. 影响力3.3. 根据人类反馈的强化学习3.4. 生成式AI3…...

惊艳!AI模型DIAMOND可模拟《反恐精英》,单张RTX 3090就能运行

最近&#xff0c;研究人员开发了一种名为 DIAMOND&#xff08;Diffusion for World Modelling&#xff09;的 AI 模型&#xff0c;它能够在神经网络中模拟著名的电脑游戏《反恐精英:全球攻势》(CS:GO)。 这个模型在一张 Nvidia RTX3090显卡上运行&#xff0c;能够达到每秒10帧…...

中波长线天线耦合的一个方法

围绕窗外墙外牵了10米的室外天线。 短波&#xff0c;fm都是很简单&#xff0c;一个夹子直接夹在拉杆天线上面&#xff0c;效果已经很好。 今天偶尔听到中波前面大约510khz的地方有个摩尔斯码。是成都附近机场的NDB。这个平时要在楼顶或者很空旷的地方才能收到。音量比较小&am…...

Java基础(6)

深拷贝和浅拷贝区别了解吗&#xff1f;什么是引用拷贝&#xff1f;关于深拷贝和浅拷贝区别&#xff0c;我这里先给结论&#xff1a;浅拷贝&#xff1a;浅拷贝会在堆上创建一个新的对象&#xff08;区别于引用拷贝的一点&#xff09;&#xff0c;不过&#xff0c;如果原对象内部…...

[JAVAEE] 线程安全问题

目录 一. 什么是线程安全 二. 线程安全问题产生的原因 三. 线程安全问题的解决 3.1 解决修改操作不是原子性的问题 > 加锁 a. 什么是锁 b. 没有加锁时 c. 加锁时 d. 死锁 e. 避免死锁 3.2 解决内存可见性的问题 > volatile关键字 (易变的, 善变的) a. 不加…...

k8s 集群给用户生成 kubeconfig 文件

在 k8s 集群的 RBAC 里有用到用户、组的概念&#xff0c;但是它又不直接管理这些资源&#xff0c;而是通过外部身份验证机制&#xff08;Authentication Mechanisms&#xff09;来管理和定义的&#xff0c;比如证书进行签名时&#xff0c;将其配置为 Subject: O system:master…...

(八)Proteus仿真STM32单片机GPIO驱动数码管

1&#xff0c;参考上篇&#xff0c;将LED点阵屏更换成数码管如下图 2&#xff0c;修改驱动函数&#xff0c;数组seg[14]前10个是0-9数字的编码&#xff0c;后四个是空格&#xff0c;点&#xff0c;横线&#xff0c;下划线 char seg_decode(char num)//数字解码 {const char se…...

Python进阶知识1

Python函数 定义一个函数 1.什么是函数&#xff1a;函数是可以重复执行的语句块&#xff0c;可以重复调用 2.作用&#xff1a;用于封装语句块, 提高代码的重用性。 函数是面向过程编程的最小单位 def 语句 1.作用&#xff1a;用来定义&#xff08; 创建&#xff09;函数 2…...

单片机设计|基于STM32实现具有室内定位功能的智能手环的设计

作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参与学生毕业答辩指导&#xff0c;…...

计算机网络——运输层(可靠传输、超时重传、选择确认、流量控制和拥塞控制、TCP连接和释放)

TCP可靠传输的实现 我们假定数据传输只在一个方向进行&#xff0c;即A发送数据&#xff0c;B给出确认。这样的好处是使讨论限于两个窗口&#xff0c;即发送方A的发送窗口和接收方B的接收窗口。 以字节为单位滑动窗口 发送方构造窗口 窗口前沿和后沿的移动情况 描述发送窗口的状…...

Web安全实践

前言 安全无小事&#xff0c;成败在细节&#xff0c;网络有风险&#xff0c;灾难弹指间。 安全一般情况下看不见&#xff0c;在你周围漂浮着&#xff0c;显现出来后&#xff0c;往往会刻骨铭心。正因为安全看不见&#xff0c;所以往往不受重视&#xff0c;因为感知到的概率真…...

【算法篇】动态规划类(2)——01背包+完全背包(笔记)

目录 一、理论基础 1. 问题类型 2. 01背包问题 3. 完全背包问题 4. 解题步骤 &#xff08;1&#xff09;确定dp数组&#xff08;dp table&#xff09;以及下标的含义。 &#xff08;2&#xff09;确定递推公式。 &#xff08;3&#xff09;dp数组如何初始化。 &#x…...

基于SpringBoot的“社区医院管理服务系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“社区医院管理服务系统”的设计与实现&#xff08;源码数据库文档PPT) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统首页界面图 用户注册界面图 医生界面…...

二进制漏洞利用 | 整数溢出探究

什么是整数溢出&#xff1f; 整数溢出是指当算术运算的结果超出用于存储该结果的数据类型的容量时发生的现象。简单来说&#xff0c;就是当一个数值变得过大&#xff08;对于有符号整数来说&#xff0c;也可能是过小&#xff09;&#xff0c;无法被正常存储&#xff0c;从而导…...

10种经典的螺栓防松设计

螺栓防松在机械设计中至关重要&#xff0c;不同方式的螺栓防松有哪些特点一起来看一下。 01双螺母 双螺母防松也称对顶螺母防松&#xff0c;当两个对顶螺母拧紧后&#xff0c;两个对顶的螺母之间始终存在相互作用的压力&#xff0c;两螺母中有任何一个要转动都需要克服旋合螺纹…...

开放式蓝牙耳机哪个品牌好用?开放式耳机排行榜测评!

开放式耳机&#xff0c;因其特殊的不入耳佩戴模式&#xff0c;让使用者在享受音乐或者进行通话的过程中&#xff0c;依然可以对外界声音保持敏感。在户外运动场景下&#xff0c;这种特性优势尽显&#xff0c;既保证了耳机佩戴的稳定和舒适&#xff0c;又提高了运动的安全性。为…...

新能源行业必会基础知识---电力现货问答---第5问---何为电力中长期市场?与电力现货市场之间有何关系?国内试点地区如何衔接?国外有哪些经验值得借鉴?

新能源行业必会基础知识-----电力现货问答-----主目录-----持续更新https://blog.csdn.net/grd_java/article/details/142909208 虽然这本书已经出来有几年了&#xff0c;现货市场已经产生了一定变化&#xff0c;但是原理还是相通的。还是推荐大家买来这本书进行阅读观看&#…...

Python基础语法:访问器@property和修改器@xxx.setter

一、简介 访问器和修改器也是装饰器的一种。 property: 访问器&#xff0c;getter xxx.setter: 修改器&#xff0c;setter 访问器和修改器的根本目的是想将属性私有化&#xff0c;提供getter&setter去访问。 访问器和修改器能够做到访问属性其实在调用getter方法&#xff0…...

DISMTools企业部署:在组织中大规模应用的最佳实践

DISMTools企业部署&#xff1a;在组织中大规模应用的最佳实践 【免费下载链接】DISMTools The connected place for Windows system administration 项目地址: https://gitcode.com/GitHub_Trending/di/DISMTools DISMTools是一款专为Windows系统管理设计的连接平台&…...

③ AI副业第一步:如何找到适合自己的AI赚钱赛道

③ AI副业第一步&#xff1a;如何找到适合自己的AI赚钱赛道选对赛道&#xff0c;努力才有意义。选错赛道&#xff0c;越努力离钱越远。前言&#xff1a;为什么大多数人AI副业做不起来&#xff1f; 我观察了100想做AI副业的人&#xff0c;失败的原因高度一致&#xff1a; 失败路…...

零基础轻松拿捏!魔珐星云青少年健康运动教学数字人搭建全流程指南

大家好&#xff01;本次给大家分享一款面向青少年体育教育的AI创意实践项目——青少年健康运动教学智能数字交互系统。本项目聚焦青少年体质健康痛点&#xff0c;围绕体育教学智能化升级需求&#xff0c;打造集健康知识教学、运动动作陪练、健康知识考核、运动能力评测于一体的…...

Python 3.7 + XGBoost 多分类实战:从数据清洗到SHAP模型解释的保姆级教程

Python 3.7 XGBoost 多分类实战&#xff1a;从数据清洗到SHAP模型解释的保姆级教程在机器学习领域&#xff0c;XGBoost因其出色的性能和可解释性成为众多数据科学家的首选工具。本文将带您完整走过多分类任务的全流程&#xff0c;从原始数据到可解释的预测模型&#xff0c;每个…...

iPaaS 应用场景深度解析:从系统孤岛到数据自由流动的六大实战路径

写在前面 一个企业的数字化程度越高&#xff0c;系统就越多。系统越多&#xff0c;集成问题就越严重。 这不是假设&#xff0c;而是我们在服务客户过程中反复验证的结论——企业数字化转型的瓶颈&#xff0c;往往不在于"造新系统"&#xff0c;而在于"连老系统&q…...

适合地产人用的中介房源管理系统

在房产经纪行业&#xff0c;房源管理与客源管理是经纪人日常工作的核心&#xff0c;直接影响业务效率与成交转化。选择一套适配行业需求的中介房源管理系统&#xff0c;能帮助中介团队规范流程、降低运营成本、大幅提升业绩。今天我们以客观视角&#xff0c;详细解析全房源系统…...

Python PIL 画矩形框

基础代码 from PIL import Image, ImageDraw# 打开图片 img Image.open(your_image.jpg)# 创建绘图对象 draw ImageDraw.Draw(img)# 矩形坐标 (x1, y1, x2, y2) coords (23, 21, 69, 76)# 画矩形框&#xff08;红色&#xff0c;线宽2&#xff09; draw.rectangle(coords, ou…...

Python UiAutomation实战:从网页数据抓取到桌面应用,一个库打通数据采集全链路

Python UiAutomation实战&#xff1a;打通数据采集全链路的智能解决方案 在数据驱动的商业环境中&#xff0c;企业常常面临跨平台数据采集的挑战——财务系统里的交易记录需要与网站后台的报表进行交叉分析&#xff0c;销售数据要从桌面软件导出后上传到云端处理系统。传统的人…...

Arcmap实操:如何用‘渔网’给你的地图做一次‘CT扫描’——以韶关市路网密度可视化为例

Arcmap实操&#xff1a;如何用‘渔网’给你的地图做一次‘CT扫描’——以韶关市路网密度可视化为例 想象一下&#xff0c;医生通过CT扫描将人体内部结构分层呈现&#xff0c;而GIS中的"渔网"工具同样能对城市路网进行"切片式"分析。这种空间离散化技术&…...