如何使用jquery验证和添加日期

时间:2013-06-13 14:53:29

标签: javascript jquery date

我正在健康网站上工作。

我有一个名为Last Menstrual Period的字段,它是一个文本框,必须由医生填写,格式为YYYY-MM-DD。

我想要做的是,我必须在医生进入的LMP日期增加281天,以便产生预期的分娩日期(分娩)

所以我需要做以下事情:

  1. 输入日期的格式应为YYYY-MM-DD

  2. 这应该是一个有效的日期,即照顾闰年和无效日期,如2013-02-31等。

  3. 生成预计交货日期(根据输入的LMP)后,应显示在屏幕上。

  4. 只要在LMP文本框中输入日期,就应执行这些验证,并在LMP文本框下方的标记内显示预期交货日期

  5. 我该怎么做?这是我到目前为止所尝试的内容。

    // Calculate Expected Date Of Delivery
    $('#lmp_date').change(function()
    {
        var lmp_entered = $this.val();
    
        if(lmp_entered)
        {
            // $('#edd').html('1');
        }
        else
        {
            // $('#edd').html('Please enter last menstrual date to calculate EDD');
    

    请帮助我如何实现这些验证并使用jquery显示日期。我是jquery的新手,所以不太了解它。任何小帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:1)

验证我不建议使用另一个库,尤其是这样一个简单的规则。如果规则是如此严格,只需编写自己的规则并在网站范围内使用它。

例如,将非数字条目阻止到文本框,并在每个第5和第9个字符中添加代码“ - ”。

然后要验证检查文本的长度并使用虚线,请使用split来获取年份。分别为月份和日期,如果您的日期年,月和日等于您的txt年,月和日,则将其转换为Date(txtYear,txtMonth,txtDay)的日期,则表示它是有效日期。之后使用以下来计算出生日期。

只需使用Date构造函数,如下所示

var delDate = new Date(year, month, day + 281)

不要忘记在JS开始0个月,所以Jan = 0,2月= 1等。