[英]x-editable datepicker Year/ Month only
我已将jQuery UI datepicker修改为仅显示年份和月份。 我使用这些javascript事件来处理数据: http : //jsfiddle.net/2puz2/4/
$( "#datepicker" ).datepicker({
showButtonPanel: true,
changeMonth: true,
changeYear: true,
dateFormat: 'yy-mm',
currentText: 'This Month',
onClose: function(dateText, inst) {
var month = $('#ui-datepicker-div .ui-datepicker-month :selected').val();
var year = $('#ui-datepicker-div .ui-datepicker-year :selected').val();
$(this).datepicker('setDate', new Date(year, month, 1));
var setMonth = ('0' + (parseInt(month) + 1)).slice(-2);
$(this).val('Start: ' + year + '-' + setMonth);
},
beforeShow: function(input, inst) {
if ((datestr = $(this).val()).length > 0) {
var dateOutOfDesc = datestr.match(/\d{4}\-\d{2}/);
var dateparts = dateOutOfDesc[0].split('-');
var year = dateparts[0];
var month = dateparts[1];
$(this).datepicker('option', 'defaultDate', new Date(year, month-1, 1));
$(this).datepicker('setDate', new Date(year, month-1, 1));
}
}
});
现在我想使用x-editable来编辑这个日期,但我无法弄清楚如何将这些回调函数附加到内置的datepicker。 我试过了
editable.input.options.datepicker.beforeShow = function(input, inst) {
...
见http://jsfiddle.net/L2Z9Q/18/
但似乎这是在datepicker已经初始化之后。
有任何想法吗?
您应该使用onChangeMonthYear
事件(在月份或年份更改时触发 - 文档 )来更新datepicker日期而不是onClose
。 我没有解释为什么onClose
没有被解雇...
$('#yearmonth').editable({
pk: 1,
format: 'yyyy-mm',
viewformat: 'yyyy-mm',
datepicker: {
onChangeMonthYear: function( year, month, inst){
$(this).datepicker('setDate', new Date(year, month-1, 1));
}
}
})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.