首页 > 其他分享 >2024/10/30

2024/10/30

时间:2024-10-30 22:41:58浏览次数:1  
标签:10 30 reportToEdit value 2024 getElementById let innerHTML document

今天学习了对页面输入内容的约束写法
/ 提交日报逻辑
document.getElementById('submitForm').addEventListener('submit', function (e) {
e.preventDefault();
let batch = document.getElementById('batch').value;
let workerId = document.getElementById('workerId').value;
let workerName = document.getElementById('workerName').value;
let totalTransferred = parseInt(document.getElementById('totalTransferred').value);
let qualifiedTransferred = parseInt(document.getElementById('qualifiedTransferred').value);
let defective = parseInt(document.getElementById('defective').value);
let lost = parseInt(document.getElementById('lost').value);
let reportDate = document.getElementById('reportDate').value;

  // 生产批次规则判断
  if (!/^\d{10}$/.test(batch)) {
    document.getElementById('submitResult').innerHTML = "生产批次格式错误,应为10位数字";
    return;
  }
  let yearMonth = batch.substring(0, 4);
  let sequence = batch.substring(4);
  if (isNaN(yearMonth) || isNaN(sequence)) {
    document.getElementById('submitResult').innerHTML = "生产批次前4位和后4位都应为数字";
    return;
  }

  // 工号规则判断
  if (!/^\d{6}$/.test(workerId)) {
    document.getElementById('submitResult').innerHTML = "工号格式错误,应为6位数字";
    return;
  }
  let workshop = workerId.substring(0, 3);
  let workerSeq = workerId.substring(3);
  if (isNaN(workshop) || isNaN(workerSeq)) {
    document.getElementById('submitResult').innerHTML = "工号前3位和后3位都应为数字";
    return;
  }

  // 工人姓名规则判断
  if (workerName.length > 10) {
    document.getElementById('submitResult').innerHTML = "工人姓名不能超过10个汉字";
    return;
  }

  // 日报押平规则判断
  if (totalTransferred === qualifiedTransferred + defective + lost) {
    // 保存数据到数组,新数据置顶
    dailyReports.unshift({
      batch: batch,
      workerId: workerId,
      workerName: workerName,
      totalTransferred: totalTransferred,
      qualifiedTransferred: qualifiedTransferred,
      defective: defective,
      lost: lost,
      reportDate: reportDate
    });
    document.getElementById('submitResult').innerHTML = '保存成功';
    showPage('queryPage');
  } else {
    document.getElementById('submitResult').innerHTML = '上报数据有误';
  }
});

// 修改日报逻辑
document.getElementById('editForm').addEventListener('submit', function (e) {
  e.preventDefault();
  let editReportDate = document.getElementById('editReportDate').value;
  let today = new Date().toISOString().split('T')[0];
  if (editReportDate === today) {
    // 查找当天数据
    let reportToEdit = dailyReports.find(report => report.reportDate === editReportDate);
    if (reportToEdit) {
      document.getElementById('editDetails').innerHTML = `生产批次: ${reportToEdit.batch}, 工号: ${reportToEdit.workerId}, 工人姓名: ${reportToEdit.workerName}`;
      document.getElementById('editDetailsForm').style.display = 'block';
      document.getElementById('editTotalTransferred').value = reportToEdit.totalTransferred;
      document.getElementById('editQualifiedTransferred').value = reportToEdit.qualifiedTransferred;
      document.getElementById('editDefective').value = reportToEdit.defective;
      document.getElementById('editLost').value = reportToEdit.lost;
    }
  } else {
    document.getElementById('editResult').innerHTML = "不允许修改非当天日报";
  }
});

document.getElementById('editDetailsForm').addEventListener('submit', function (e) {
  e.preventDefault();
  let editReportDate = document.getElementById('editReportDate').value;
  let reportToEdit = dailyReports.find(report => report.reportDate === editReportDate);
  if (reportToEdit) {
    reportToEdit.totalTransferred = parseInt(document.getElementById('editTotalTransferred').value);
    reportToEdit.qualifiedTransferred = parseInt(document.getElementById('editQualifiedTransferred').value);
    reportToEdit.defective = parseInt(document.getElementById('editDefective').value);
    reportToEdit.lost = parseInt(document.getElementById('editLost').value);
    document.getElementById('editDetailsForm').style.display = 'none';
    document.getElementById('editDetails').innerHTML = "";
  }
});

标签:10,30,reportToEdit,value,2024,getElementById,let,innerHTML,document
From: https://www.cnblogs.com/dengyizhidai/p/18516761

相关文章

  • 性能分析202410月
    https://www.cnblogs.com/yungyu16/p/13032994.htmlhttps://mytechshares.com/2022/04/06/why-time-source-impact-performance/https://github.com/hust-open-atom-club/linux-insides-zh/blob/master/Misc/linux-misc-1.mdhttps://github.com/0voice/Understanding_in_Ru......
  • 【专题】2023-2024中国保险数字化营销调研报告汇总PDF洞察(附原数据表)
    原文链接: https://tecdat.cn/?p=38063在时代浪潮的推动下,中国保险行业正经历着一场波澜壮阔的变革之旅。2023年,中国经济迈向高质量发展阶段,保险公司纷纷聚焦队伍转型,专业化、职业化代理人成为行业新方向。回顾保险代理人队伍发展,历经多次变革,从早期扩张到面临问题,再到如今的规......
  • SS241030C. 桥梁(bridge)
    SS241030C.桥梁(bridge)题意本人小时候也分不清fridge和bridge给你\(n\)个点,\(m\)条边的图,边带权。有\(q\)个要求。每个要求给出\(a_i,b_i\),要求至少选中第\(a_i\)或\(b_i\)条边。问最小代价选边使得图连通。solution注意到\(q\le16\),可以直接枚举每个要求必......
  • 2024CCPC哈尔滨部分题解
    赛时被评测机卡死了M.奇怪的上取整求\(\sum_{i=1}^{n}f(n,i)\)\(Input\)第一行一个整数\(T(1<=T<=10^3)\),表示数据组数对于每组数据,一行一个整数\(n(1<=n<=10^9)\)\(Output\)对于每组数据,输出一行一个整数,表示答案。\(Sample\)35451114514————————21T10......
  • 代码随想录算法训练营第十二天| 226.翻转二叉树、101. 对称二叉树、104.二叉树的最大
    226.翻转二叉树题目链接:.-力扣(LeetCode)文章讲解:代码随想录视频讲解:听说一位巨佬面Google被拒了,因为没写出翻转二叉树|LeetCode:226.翻转二叉树_哔哩哔哩_bilibili《代码随想录》算法公开课开讲啦!快来打卡!本期视频的文字讲解版在「代码随想录」刷题网站:programmercarl.com......
  • 代码随想录算法训练营第十三天| 110.平衡二叉树、257. 二叉树的所有路径、404.左叶子
    110.平衡二叉树题目链接:.-力扣(LeetCode)文章链接:代码随想录视频链接:后序遍历求高度,高度判断是否平衡|LeetCode:110.平衡二叉树_哔哩哔哩_bilibili《代码随想录》算法公开课开讲啦!快来打卡!本期视频的文字讲解版在「代码随想录」刷题网站:programmercarl.com,这里刷题顺序,详......
  • 高校联动,创新无限!“2024 深圳国际金融科技大赛”校园行活动圆满结束
    在金融科技蓬勃发展的当下,人才培养成为推动行业前行的关键。为推进深圳市金融科技人才高地建设,向高校学子提供一个展示自身知识、能力和创意的平台,2024FinTechathon深圳国际金融科技大赛——西丽湖金融科技大学生挑战赛重磅开启,并精心筹备了一系列精彩活动。自报名启动后,大......
  • 10.28 ~ 11.3
    10.28返校日。晚上到了校之后就开始看大家的游击,然后\(\text{Huge}\)让我们写总结;于是就顺便把游记写了......
  • 20222420 2024-2025-1 《网络与系统攻防技术》实验三实验报告
    202224202024-2025-1《网络与系统攻防技术》实验三实验报告1.实验内容1.1本周学习内容1.1.1后门技术接着上一节课的内容继续学习了进程隐藏技术,它还包含基于DLL的进程隐藏技术:远程注入Dll技术基于远程线程注入代码的进程隐藏技术Rootkit方式分用户级和内核级......
  • 20222424 2024-2025-1 《网络与系统攻防技术》实验三实验报告
    202224242024-2025-1《网络与系统攻防技术》实验三实验报告1.实验内容(1)正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧正确使用msf编码器,使用msfvenom生成如jar之类的其他文件veil,加壳工具使用C+shellcode编程(2)通过组合应用各种技术实现恶......