如果用户未在jquery中输入结束日期,如何将开始日期设置为默认结束日期?

var dates = $("#filterDateStart, #filterDateEnd").datepicker({ dateFormat: "yy-mm-dd", changeMonth: true, numberOfMonths: 1, onSelect: function (selectedDate) { var option = this.id == "filterDateStart" ? "minDate" : "maxDate", instance = $(this).data("datepicker"), date = $.datepicker.parseDate( instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings); dates.not(this).datepicker("option", option, date); } }); 

这应该工作

 $("#filterDateStart").datepicker({ onSelect: function () { var dateObj = $(this).datepicker( 'getDate' ); $("#filterDateEnd").datepicker( "option", "defaultDate", dateObj); } }); 

编辑

用于测试的HTML:

 

Date:

Date:

JavaScript的

 $(document).ready(function(){ $("#filterDateStart").datepicker({ dateFormat: "yy-mm-dd", changeMonth: true, numberOfMonths: 1, onSelect: function () { var startDate = $(this).datepicker( 'getDate'); var endDate = $("#filterDateEnd").datepicker( 'getDate' ); if($("#filterDateEnd").datepicker( 'getDate' ) == null || startDate > endDate) { $("#filterDateEnd").datepicker( "setDate", startDate ); } } }); $("#filterDateEnd").datepicker({ dateFormat: "yy-mm-dd", changeMonth: true, numberOfMonths: 1 }); $("#testForm").submit(function(e){ e.preventDefault(); alert( $("#filterDateEnd").datepicker("getDate")); }) }); 

编辑2: 工作FIDDLE