用于比较日期字段的Javascript

时间:2012-07-26 09:07:27

标签: javascript html

在我的表格中,有两个标签字段,即出生日期和确认出生日期。每个字段分别包含DD,MM和YY的三个输入字段。下面是html代码,

     <label>Date of Birth</label>
     <input type="textbox" id="dd1" />
     <input type="textbox" id="mm1" /> 
     <input type="textbox" id="yy1" />
     <label>Confirm Date of Birth</label>
     <input type="textbox" id="dd2" />
     <input type="textbox" id="mm2" /> 
     <input type="textbox" id="yy2" />

现在我需要比较两个标签字段。如果两者相等,则需要获取警报消息。请帮忙......

4 个答案:

答案 0 :(得分:0)

只需创建一个接受数字(1或2)的函数,然后用jQuery做一个$(“#XX”+ param).value的连续点(其中XX是dd,mm,yy和param是收到参数)。

从字符串创建日期并将其返回。

我建议您使用HTML5查看html5-date

答案 1 :(得分:0)

对于比较两个javascript日期,此链接可能对您有用

Compare two dates with JavaScript

答案 2 :(得分:0)

您可以将它们解析为Date对象:

var y1 = document.getElementById('yy1').value;
// get the rest input value
var date = new Date(y1, m1, d1)
  , confirmed_date = new Date(y2, m2, d2);
if (date == confirmed_date) { /* do something */ }

上述代码也可以验证用户的输入是否为有效日期。

有关日期对象的更多信息:http://www.javascriptkit.com/jsref/date.shtml

答案 3 :(得分:0)

var d1 = document.getElementById('dd1').value;
var m1 = document.getElementById('mm1').value;
var y1 = document.getElementById('yy1').value;

var d2 = document.getElementById('dd2').value;
var m2 = document.getElementById('mm2').value;
var y2 = document.getElementById('yy2').value;

var date1 = new Date(y1 + "/" + m1 + "/" + d1);
var date2 = new Date(y2 + "/" + m2 + "/" + d2);

date1 = date1.getTime();
date2 = date2.getTime();

if (date1 == date2) {
    alert('Dates are equal');
} else {
    alert('Dates are not equal');
}

这可以作为纯javascript使用,或者你可以使用jquery替换

document.getElementByIt('dd1').value;

与     $( '#DD1')VAL();

或者您可以使用日期选择器,我建议使用jquery-ui http://jqueryui.com/demos/datepicker/

并比较日期选择器填充的2个字段中的日期。