我有一个日期选择器功能:
$(document).ready(function () {
$("#StartDate").datepicker({
dateFormat: 'mm/dd/yy',
changeMonth: true,
changeYear: true,
minDate: '',
maxDate: '',
onSelect: function (date) {
var selectedDate = new Date(date);
var endDate = new Date(selectedDate.getTime());
fun();
$("#EndDate").datepicker("option", "minDate", endDate);
$("#EndDate").datepicker("option", "maxDate");
}
}).css('vertical-align', 'top');
});
上面的代码工作正常。但是,如果我将代码放在文本框单击事件中,例如
$(document).ready(function () {
$("#StartDate").click(function(){
$(this).datepicker({
//and the rest......
});
})//click
})//ready
那就不行了。我究竟做错了什么?当单击文本框时,我需要在 datepicker
的 onSelect
属性中执行一些功能,然后显示日期选择器。提前致谢。
最佳答案
您无需执行任何操作即可设置日期格式。 DatePicker 小部件会为您完成此操作。只需使用 altField
和 altFormat
属性:
演示:JSfiddle
$("#myDatePicker").datepicker({
// The hidden field to receive the date
altField: "#dateHidden",
// The format you want
altFormat: "yy-mm-dd",
// The format the user actually sees
dateFormat: "dd/mm/yy",
onSelect: function (date) {
// Your CSS changes, just in case you still need them
$('a.ui-state-default').removeClass('ui-state-highlight');
$(this).addClass('ui-state-highlight');
}
});
关于jquery - 日期选择器不适用于点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28911651/