比较jquery中的日期

时间:2011-02-15 06:54:47

标签: jquery date-comparison

我有以下代码,虽然我01-Jan-2009 DateTo03-Jan-2009 DateFrom NAN正在读取 var DateToValue = $("#DateTo").val(); var DateFromValue = $("#DateFrom").val(); if (Date.parse(DateToValue) <= Date.parse(DateFromValue)) { $("#DateFrom").val(DateToValue) } 的值。我错过了什么吗?我正在引用

  <script src="@Url.Content("~/Scripts/jquery-1.4.2.min.js")"
 type="text/javascript"></script>

 <script  src="@Url.Content("~/Scripts/jquery.datePicker.js")"
type="text/javascript"></script>

         <script src="@Url.Content("~/Scripts/jquery.validate.js")"
 type="text/javascript"></script>
{{1}}

7 个答案:

答案 0 :(得分:17)

这个怎么样?

  DateTime DateToValue = $("#DateTo").val();
  DateTime DateFromValue = $("#DateFrom").val();

  if (Date.parse(DateToValue) <= Date.parse(DateFromValue)) {
      $("#DateFrom").val(DateToValue)
  }

答案 1 :(得分:10)

简单的方法是

 var start= new Date($('#txtstart').val());
 var end= new Date($('#txtend').val());
            if (start < end) {

            }

答案 2 :(得分:7)

使用DateJS解析日期。 http://www.datejs.com/ 只需在html中包含脚本。

答案 3 :(得分:2)

我与当前日期的比较

    function isPastDate(dateText) {
// date is dd/mm/yyyy
        var inputDate = dateText.split("/");
        var today = new Date();
        inputDate = new Date(inputDate[2], inputDate[1] - 1, inputDate[0], 0, 0, 0, 0);
        today = new Date(today.getFullYear(), today.getMonth(), today.getDate(), 0, 0, 0, 0);
        return inputDate < today;
};

答案 4 :(得分:1)

我认为我的回答很晚,请告诉我它是否更好,因为在v1.10中只有这对我有用:

if($('#DateTo').val().split("/").reverse().join("") <= 
$('#DateFrom').val().split("/").reverse().join("")){//Do something}

答案 5 :(得分:0)

您可以使用下面的代码来解析日期,使用毫秒方法(在一天中添加毫秒)将无法正常进行日光处理。

for ( beginDate= new Date(startDate.getTime()); beginDate.getTime()<=endDate.getTime(); beginDate.setDate(beginDate.getDate() + 1)) {
            dateRangeArray.push(new Date(beginDate.getTime()));
        }

答案 6 :(得分:0)

这里更简单的方法来自简单的java脚本

<script>
 //get the values
function asdf(){
var fDate=document.forms[0].fromDate.value;
var tDate=document.forms[0].toDate.value;

//Compare

if(fDate>tDate){
        var dateComponentsfrom = fDate.split("/");

//split and convert into date to be more precise

        var fromdate = new Date(dateComponentsfrom[2], dateComponentsfrom[1] - 1, dateComponentsfrom[0]);
        var dateComponentsto = tDate.split("/");
        var todate = new Date(dateComponentsto[2], dateComponentsto[1] - 1, dateComponentsto[0]);
        if(fromdate>todate){
            alert('from date cannot be greater than to date');
            return false;                        
        }
    }
}
</script>