2013-03-13 82 views
0

規格改變顯然,我無法理解爲什麼這不起作用。我有一個#StartDate和#EndDate域的表單glDatePicker可逆日期範圍的相反順序

<ul> 
    <li> 
     <label for="StartDate">Start Date</label> 
     <input type="text" id="StartDate" name="StartDate"> 
    </li> 
    <li>  
     <label for="EndDate">End Date</label> 
     <input type="text" id="EndDate" name="EndDate"> 
     <input type="submit" id="Button6" value="foo" /> 
    </li> 
    <li> 
     <label for="AllDates"><input type="checkbox" name="AllDates" id="AllDates" value="YES">All Dates</label> 
    </li> 
</ul> 

以前的日期範圍是從今天 - 轉發這工作:

$("#bottomContent").on('focus', "#StartDate", function(){ 
    var today = new Date(); 
    var datelimit = new Date(today); 
    datelimit.setDate(today.getDate() + 31); 

    $(this).glDatePicker({ 
     showAlways: false, 
     allowMonthSelect: true, 
     allowYearSelect: true, 
     prevArrow:'<', 
     nextArrow:'>', 
     selectedDate:today, 
     selectableDateRange: [{ 
      from: today, 
      to: datelimit 
     }, ], 
     onClick: function (target, cell, date, data) { 
      target.val((date.getMonth() +1) + '/' + date.getDate() + '/' + date.getFullYear()); 
      $('#AllDates').prop('checked', false); 
      if (data != null) { 
       alert(data.message + '\n' + date); 
      } 
     } 
}).glDatePicker(true); 

var to = $('#EndDate').glDatePicker({ 
    showAlways: false, 
    onClick: function (target, cell, date, data) { 
     target.val((date.getMonth() +1) + '/' + date.getDate() + '/' + date.getFullYear()); 
     $('#AllDates').prop('checked', false); 
     if (data != null) { 
      alert(data.message + '\n' + date); 
     } 
    } 
}).glDatePicker(true); 
$("#bottomContent").on('focus', "#EndDate", function(){ 
    var dateFrom = new Date($("#StartDate").val()); 
    var toLimit = new Date(); 
    toLimit.setDate(dateFrom.getDate() + 31); 
    to.options.selectableDateRange = [{ 
    from: dateFrom, 
    to: toLimit 
}, ], 
    to.options.showAlways = false; 
    to.render(); 
});}); 

我需要使它從今天開始= newDate( ),並讓它回去(-365天),但只是切換所有的「+ 31」,使它前進一個月到「 - 365」不起作用,有什麼想法?

回答

0

這樣做,如果有人遇到同樣的問題。

$("#bottomContent").on('focus', "#StartDate", function(){ 
var today = new Date("January 1, 2013"); 
var datelimit = new Date(); 
datelimit.setDate(today.getDate() +14); 

$(this).glDatePicker({ 
    showAlways: false, 
    allowMonthSelect: true, 
    allowYearSelect: true, 
    prevArrow:'<', 
    nextArrow:'>', 
    selectedDate:today, 
    selectableDateRange: [{ 
     from: today, 
     to: datelimit 
    }, ], 
    onClick: function (target, cell, date, data) { 
    target.val((date.getMonth() +1) + '/' + date.getDate() + '/' + date.getFullYear()); 
     $('#AllDates').prop('checked', false); 
    if (data != null) { 
     alert(data.message + '\n' + date); 
    } 
} 
}).glDatePicker(true); 

var to = $('#EndDate').glDatePicker({ 
    showAlways: false, 
    prevArrow:'<', 
    nextArrow:'>', 
    selectedDate:today, 
    onClick: function (target, cell, date, data) { 
     target.val((date.getMonth() +1) + '/' + date.getDate() + '/' + date.getFullYear()); 
     $('#AllDates').prop('checked', false); 
     if (data != null) { 
      alert(data.message + '\n' + date); 
     } 
    } 
    }).glDatePicker(true); 
$("#bottomContent").on('focus', "#EndDate", function(){ 

var dateFrom = new Date($("#StartDate").val()); 
var toLimit = new Date(); 
//toLimit.setDate(dateFrom.getDate()); 
to.options.selectableDateRange = [{ 
    from: dateFrom, 
    to: toLimit 
}, ], 
to.options.showAlways = false; 
to.render(); 
}); 
});