`
helloJ
  • 浏览: 165745 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

验证手动输入的日期是否符合yyyymmdd格式

    博客分类:
  • js
JSP 
阅读更多
/**
* 验证手动输入的日期是否符合yyyymmdd格式
*/
function checkDate()
{
	var date=trim(event.srcElement.value);
	//允许为空
	if(0 == date.length) {
		return true;
	}
    var year,month,day;
	//日期格式:yyyymmdd
    var datePat = /^(\d{4})(\d{2})(\d{2})$/;
    var matchArray = date.match(datePat);
    if(matchArray == null)
    {
        //date + "不符合yyyymmdd日期格式,请修改!";
		alert(date + "\u4e0d\u7b26\u5408yyyymmdd\u65e5\u671f\u683c\u5f0f\uff0c\u8bf7\u4fee\u6539\uff01");
		event.srcElement.focus();
		event.srcElement.select();
		return false;
    }
	year = matchArray[1];
	month = matchArray[2];
	day = matchArray[3];
	if (1900 > year) {
		//"年值不能小于1900年,请修改!";
		alert("\u5e74\u503c\u4e0d\u80fd\u5c0f\u4e8e1900\u5e74\uff0c\u8bf7\u4fee\u6539\uff01");
		event.srcElement.focus();
		event.srcElement.select();
		return false;
	}
    if (month < 1 || month > 12)
    {
        //"月份应为1到12的整数,请修改!"
		alert("\u6708\u4efd\u5e94\u4e3a1\u523012\u7684\u6574\u6570\uff0c\u8bf7\u4fee\u6539\uff01");
        event.srcElement.focus();
		event.srcElement.select();
		return false;
    }
	if ((month==4 || month==6 || month==9 || month==11) && day==31)
    {
        //month + "月不存在31号,请修改!"
		alert(month + "\u6708\u4e0d\u5b58\u572831\u53f7\uff0c\u8bf7\u4fee\u6539\uff01");
        event.srcElement.focus();
		event.srcElement.select();
		return false;
    }
    if (month==2)
    {
        var isleap=(year % 4==0 && (year % 100 !=0 || year % 400==0));
        if (day>29)
        {
            //"2月最多有29天,请修改!"
			alert("2\u6708\u6700\u591a\u670929\u5929\uff0c\u8bf7\u4fee\u6539\uff01");
            event.srcElement.focus();
			event.srcElement.select();
			return false;
        }
        if ((day==29) && (!isleap))
        {
            //"闰年2月才有29天,请修改!"
			alert("\u95f0\u5e742\u6708\u624d\u670929\u5929\uff0c\u8bf7\u4fee\u6539\uff01");
            event.srcElement.focus();
			event.srcElement.select();
			return false;
        }
    }
    if (day < 1 || day > 31)
    {
        //"每个月的天数应该为1到31的整数,请修改!"
		alert("\u6bcf\u4e2a\u6708\u7684\u5929\u6570\u5e94\u8be5\u4e3a1\u523031\u7684\u6574\u6570\uff0c\u8bf7\u4fee\u6539\uff01");
        event.srcElement.focus();
		event.srcElement.select();
		return false;
    }
	return true;
}

 jsp

<xmdc:outputText value="移交日期"></xmdc:outputText>
				<xmdc:panelGroup>
					<xmdc:ccbcalendar
						value="#{AddExistDataTransfer.transferBFO.transferDate}"
						id="transferDate"></xmdc:ccbcalendar>
					<xmdc:outputText value="*" style="color:red;"></xmdc:outputText>
				</xmdc:panelGroup>

<xmdc:verbatim>
		<script>
			document.getElementById("AEDT_account:transferDate_1").onblur = checkDate;

		</script>
	</xmdc:verbatim>

 

分享到:
评论

相关推荐

    用js来验证日期的格式正确与否

    ### 使用JavaScript验证日期格式 在Web开发中,经常需要对用户输入的数据进行验证,确保其符合预期的格式或规则。本文将详细介绍如何使用JavaScript来验证日期格式的正确性。我们将通过一个具体的示例来探讨这一...

    6.2日期格式处理

    例如,你可以设计一个程序,让用户输入日期,然后检查它是否在有效范围内(比如1900年到2100年之间),并允许用户选择不同的日期格式,如"YYYY-MM-DD"或"MM/DD/YYYY"。 在实现过程中,你可能会遇到的问题包括错误...

    Oracle 验证是否是日期

    函数`FN_ISDATE_JAVA`的主要功能是验证输入的字符串是否符合日期格式(YYYYMMDD)。如果字符串可以被正确解析为日期,则返回1;反之则返回0。 #### SQL 函数实现 ```sql CREATE OR REPLACE FUNCTION FN_ISDATE_...

    java代码验证日期格式正则表达式(包含闰年验证)带注释

    * @param 日期验证,验证的格式有: * "yyyyMM","yyyyMMdd","yyyyMMdd HH:mm:ss", * "yyyy-MM","yyyy-MM-dd","yyyy-MM-dd HH:mm:ss" * "yyyy.MM","yyyy.MM.dd","yyyy.MM.dd HH:mm:ss" * "yyyy/MM","yyyy/MM/dd...

    Delphi中判断字符串是否符合日期格式.pdf

    在Delphi编程中,判断一个字符串是否符合日期格式是一个常见的任务。这个任务通常涉及到字符串处理、日期时间操作以及条件判断。下面将详细解释这个`TF_tn.IsDate`函数实现的逻辑。 首先,函数接收一个名为`Var...

    js时间比较(yyyymmdd)

    在JavaScript中,日期和时间的处理是编程中常见的任务,特别是在构建动态网页和Web应用程序时。...如果需要处理多种日期格式,或者需要更精确的日期操作,那么创建`Date`对象并使用`getTime()`方法会更合适。

    EXCEL日期格式:YYYYMMDD转换成yyyy-mm-dd

    在Excel中,日期格式的转换是一项常见的操作,特别是在数据整合和导入到其他系统时。"YYYYMMDD"和"yyyy-mm-dd"都是日期的表示方式,但它们的格式不同,前者是一个连续的数字字符串,后者则包含短横线作为分隔符。在...

    验证EXCEL导入模板是否符合标准

    // 文件名符合日期格式 } else { // 文件名不符合日期格式 } ``` 对于工作表名的验证,我们可以遍历Excel文件中的所有工作表,检查每个工作表的名字是否符合预期: ```csharp using Excel = Microsoft.Office....

    jquery 将当前时间转换成yyyymmdd格式的实现方法

    这是一种日期格式,其中yyyy代表四位数的年份,mm代表两位数的月份,dd代表两位数的日。这种格式常用于数据库中存储日期信息,因为它可以避免插入和查询时出现的格式歧义。 要使用jQuery实现时间格式转换,我们需要...

    js代码-时间日期格式化为yyyymmdd

    下面我们将详细探讨如何使用JavaScript将日期格式化为`yyyymmdd`。 首先,我们需要创建一个`Date`对象来获取当前日期或指定日期。例如: ```javascript var date = new Date(); // 获取当前日期 // 或者 var ...

    jeDate-YYYYMMDD形式.rar

    标题“jeDate-YYYYMMDD形式.rar”指出这是一个与日期选择器相关的压缩包,其中包含的资源用于实现特定格式的日期输入,即“YYYYMMDD”格式。这种格式是国际通用的一种日期表示方法,其中“YYYY”代表四位年份,“MM...

    日期维表生成结果,日期对应年、月、对应自然周起止日期等维度

    日期(YYYYMMDD格式)20201229 日期(YYYY-MM-DD格式)2020/12/29 日期(时间戳格式)1609171200 日期对应年(如2018)2020 日期对应月份(如201801)202012 日期对应周号(自然年中的第几周)53 对应自然周日期2 自然周起始日期...

    e语言-将指定的时间转换成需要的格式

    这个例子展示了如何在易语言中处理日期格式转换,但实际的实现可能需要考虑更多细节,例如输入验证、错误处理和可能的优化。在编程实践中,了解如何有效地处理时间和日期格式对于任何开发者来说都是必备技能。

    yyyymmdd:Windows批处理以yyyymmdd格式打印当前日期

    Windows批处理以yyyymmdd格式打印当前日期 许可证: MIT 版权所有 (c) 2015 by Lita Li 特此授予任何人免费获得本软件副本和相关文档文件(“软件”)的许可,不受限制地处理本软件,包括但不限于使用、复制、修改...

    js 日期 format 格式化

    ### JavaScript 日期格式化方法详解 在Web开发中,日期时间的处理是非常常见的需求之一,尤其是在前端页面上显示用户友好的日期格式时。本文将详细介绍一种JavaScript中的自定义日期格式化方法,它允许开发者轻松地...

    C#验证身份证是否符合规则

    此外,为了提高用户体验,可以在每个检查环节提供具体的错误提示,例如“出生日期格式不正确”或“地区代码不存在”。 在提供的压缩包文件"身份证号码算法"中,可能包含了用于计算校验码的算法代码示例。学习并理解...

Global site tag (gtag.js) - Google Analytics