1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8"/>
5 <title>h5compareDate</title>
6 </head>
7 <body>
8 <form name="form1" action="compareDate.html" method="post" onSubmit="return compareDoubleDate()">
9 <input type="text" name="date1">
10 <input type="text" name="date2"><br>
11 <input type="submit" value="提交">
12 </form>
13 </body>
14 <script type="text/javascript">
15 function compareDoubleDate(){
16 var d1 = document.forms["form1"]["date1"].value;
17 var d2 = document.forms["form1"]["date2"].value;
18 //alert(d1);
19 //alert(d2);
20 if (d1 == null || d1 == ""){
21 alert("日期必填");
22 return false;
23 }
24 if (d2 == null || d2 == ""){
25 alert("日期必填");
26 return false;
27 }
28
29 if (!verifyDate(d1)){
30 alert("日期1格式不对");
31 return false;
32 }
33 if (!verifyDate(d2)){
34 alert("日期2格式不对");
35 return false;
36 }
37
38 if (!checkDate(d1)){
39 alert("日期1不合法");
40 return false;
41 }
42 if (!checkDate(d2)){
43 alert("日期2不合法");
44 return false;
45 }
46
47 return compareDate(d1, d2);
48
49 }
50 <!-- 先验证格式是否正确-->
51 function verifyDate(date){
52 var regExp = /^\d{4}-0?[1-9]|1[0-2]-0?[0-9]|[1-2]\d|3[0-1]$/;//js正则表达式,千万不要加引号
53 return regExp.test(date);
54 }
55
56 <!-- 日期是否合法,格式正确后,关键要看瑞年2不能超过29天,平年二月不能超过28天,小月不能超过30天,-->
57 function checkDate(date){
58 var arrDate1 = date.split("-");
59 var year = Number(arrDate1[0]);
60 var month = Number(arrDate1[1]);
61 var day = Number(arrDate1[2]);
62 //document.write(year);
63 if (month == 4 || month == 6 || month == 9 || month == 11){
64 if (day > 30){
65 alert("日期不合法,");
66 return false;
67 }
68 }
69 if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0 ){
70 if (month == 2 && day > 29){
71 alert("日期不合法,瑞年2月最大29天");
72 return false;
73 }
74
75 }else{
76 if (month == 2 && day > 28){
77 alert("日期不合法,平年2月最大28天");
78 return false;
79 }
80 }
81 return true;
82 }
83
84 function compareDate(d1, d2){
85 var arrDate1 = d1.split("-");
86 var date1 = new Date(arrDate1[0], arrDate1[1], arrDate1[2]);
87 var arrDate2 = d2.split("-");
88 var date2 = new Date(arrDate2[0], arrDate2[1], arrDate2[2]);
89 if (date1 > date2){
90 alert("前一个日期应不大于后一个日期");
91 return false;
92 }
93 return true;
94 }
95 </script>

js 日期格式、内容合法、比较大小、表单提交验证的更多相关文章

  1. amazeUI表单提交验证--input框required

    效果: html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  2. aspx中的表单验证 jquery.validate.js 的使用 以及 jquery.validate相关扩展验证(Jquery表单提交验证插件)

    这一期我们先讲在aspx中使用 jquery.validate插件进行表单的验证, 关于MVC中使用 validate我们在下一期中再讲     上面是效果,下面来说使用步骤 jQuery.Valid ...

  3. 原生JS 表单提交验证器

    转载:http://www.cnblogs.com/sicd/p/4613628.html 一.前言 最近在开发一个新项目,需要做登陆等一系列的表单提交页面.在经过“缜密”的讨论后,我们决定 不用外部 ...

  4. CodeIgniter典型的表单提交验证代码

    view内容: <?php echo form_open('user/reg'); ?> <h5>用户名</h5> <input type="tex ...

  5. Angualr6表单提交验证并跳转

    在Angular6中,使用NG-ZRROR作为前端开发框架,在进行表单开发时遇到了一些问题,最后解决了,在此记录. 1.表单构造: 引入forms: import { FormGroup, FormB ...

  6. js 记一次带时间的表单提交报400错误

    写一个功能的时候,表单里不填时间提交的时候,数据就正常传到后台了,一填上时间就报400错误,看了后台时间的处理也没问题,看了前端时间控件返回的格式也对,但是就是一直报错, 把提交的数据打印出来也没发现 ...

  7. destoon 信息发布表单提交验证

    sell 模块的form表单如下: <form method="post" id="dform" action="?" target= ...

  8. easyui表单提交验证form

    方式一,不需要考虑jquery.easyui.min.js版本 <script> $(function () { //针对 设置 novalidate:true $('.validateb ...

  9. PHP表单提交验证各种方式

    <!DOCTYPE unspecified PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www. ...

随机推荐

  1. zookeeper服务端

    服务端启动时,就启动线程通过NIO监听网络端口.每个连接都会有一个上下文环境对象,当接收到请求后,会在上下文环境对象中进行处理. 服务端启动线程,监听网络端口,(NIOServerCnxn.Facto ...

  2. burp suite 之 Scanner(漏洞扫描)

    Scanner选项:是一个进行自动发现 web 应用程序的安全漏洞的工具. 将抓取的包 通过选项卡发送至 Scanner下的Scan queue 首先来介绍 Scanner 下的 lssue acti ...

  3. Mac 效率工具必备神器 —— Alfred

    前言 alfred 这款软件称为「神器」真是当之无愧.今天专门总结一下,作为之前 Mac 配置教程-开发篇 的补充. 需要说明的是,如果你发现我介绍的功能无法使用,则代表需要花钱购买它的 Powerp ...

  4. 在Python中使用OpenCV(CV2)对图像进行边缘检测

    转载:https://blog.csdn.net/cumtb2002/article/details/107798767 Modules used: 使用的模块: For this, we will ...

  5. 编写自己的Arduino库

    参考及来源超给力啊: https://www.cnblogs.com/lulipro/p/6090407.html https://www.cnblogs.com/lulipro/p/6090407. ...

  6. Espruino似乎和Arduino一样

    参考:https://baike.baidu.com/item/Espruino Espruino 编辑 锁定 讨论   Espruino 是一个微处理器的 JavaScript 解释器,我们用它来创 ...

  7. matlab做gaussian高斯滤波

    原文链接:https://blog.csdn.net/humanking7/article/details/46826105 核心提示 在Matlab中高斯滤波非常方便,主要涉及到下面两个函数: 函数 ...

  8. P5091 【模板】扩展欧拉定理

    题目链接 昨天考试考到了欧拉公式,结果发现自己不会,就来恶补一下. 欧拉公式 \(a^b \bmod p = a^{b}\) \(b < \varphi(p)\) \(a^b \bmod p = ...

  9. java之网络编程1-Tcp

    一,了解之前先了解一下网络基础 首先理清一个概念:网络编程 != 网站编程,网络编程现在一般称为TCP/IP编程 一般的网络编程都称为Socket编程,Socket的英文意思是"插座&quo ...

  10. 【LGR-070】洛谷 3 月月赛-官方题解

    本次免费为大家提供[LGR-070]洛谷 3 月月赛的官方题解,点个赞再走呗! 代码就不上了,大家可以到别的博客上去找找!希望这篇博客能对你有所帮助!