我希望能够链接多对jQuery UI日期选择器实例,使每对中的第二个日期选择器不能选择早于第一个日期选择器的日期。我正在按照这个示例开始操作。
示例:
示例:
<ul>
<li>
<input class="counter" name="counter" type="hidden" value="43"/>
<label>Start: </label><input name="start_43" id="start_43" size="10" />
<label>End: </label><input name="end_43" id="end_43" size="10" />
</li>
<li>
<input class="counter" name="counter" type="hidden" value="44"/>
<label>Start: </label><input name="start_44" id="start_44" size="10" />
<label>End: </label><input name="end_44" id="end_44" size="10" />
</li>
</ul>
我正在通过查找“counter”数字来循环实例:
$(document).ready(function() {
var starts = $("input[name='counter']");
var dates = new Array();
starts.each(function(){
var x = this.value;
// http://jqueryui.com/demos/datepicker/#date-range
dates[x] = $( "#start_"+x+", #end_"+x ).datepicker({
onSelect: function( selectedDate ) {
var option = this.id == "#start_"+x ? "minDate" : "maxDate",
instance = $( this ).data( "datepicker" );
date = $.datepicker.parseDate(
instance.settings.dateFormat ||
$.datepicker._defaults.dateFormat,
selectedDate, instance.settings );
dates[x].not( this ).datepicker( "option", option, date );
}
});
});
});
这个代码可以在每个输入框上启用日期选择器,但它无法防止第二个实例在第一个实例之前选择日期。事实上,它要求第二个实例在第一个实例之前选择日期。当选择日期时,第二个实例会填充两个输入框!
有人能看出我哪里做错了吗?