I am using the jQuery UI plugin with the Datepicker function, to set a date range. The example provided on their page (http://jqueryui.com/demos/datepicker/date-range.html) sets the range based on input 'id'; however, I'd like to set the range based on 'class' as my form 'clones' the div to add additional inputs, making the 'id' fields unique on each clone. When I change the JavaScript to use 'class' instead of 'id', the ranges are no longer functioning.
JavaScript:
<script src="../../scripts/jquery-1.6.4.js"></script>
<script src="../../scripts/jqueryui/ui/jquery.ui.core.js"></script>
<script src="../../scripts/jqueryui/ui/jquery.ui.datepicker.js"></script>
<script>
$(function() {
var dates = $( ".start_date, .end_date" ).datepicker({
onSelect: function( selectedDate ) {
var option = this.class == "start_date" ? "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 );
}
});
});
</script>
HTML:
<div>
<label> Start Date:</label>
<input type="text" name="start_date1" id="start_date1" class="start_date" />
</div>
<div>
<label> End Date:</label>
<input type="text" name="end_date1" id="end_date1" class="end_date" />
</div>
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…