我试图获取datepicker的buttontext(默认为省略号),将自己设置为输入的值。
我在页面上有多个日期选择器,与下面的示例不同,我有一个图标而不是文本输入。我希望将值本身显示在将鼠标悬停在图标上时显示的工具提示中。
我已尝试过 - buttonText: $(this).val()
作为选项,但它没有选择任何内容
示例 - http://jsbin.com/unolot/3/
所以我的问题 - 如何获取datepicker输入的buttontext以动态匹配该值?
答案 0 :(得分:3)
您必须处理两种情况:
onSelect
事件更改按钮的标题属性create
事件,您必须在手动更新标题属性之后小部件已初始化。不要忘记将选择器的默认日期设置为字段的初始值,否则默认选择的日期为“今天”
这样的事情:
// as you have several instances, loops through them
$(".deadline_picker_on").each(function() {
var dt = $(this);
dt.datepicker({
showOn: "button",
buttonText: '',
// set the default date to the value of the field
defaultDate: dt.val(),
duration: 100,
dateFormat: 'yy-mm-dd',
showOptions: {
direction: 'right'
},
onSelect: function(dateText, inst) {
// on data selection, change the title attribute of the button
$(this).next().attr('title', dateText);
}
})
// get the button (next element)
.next()
// set the title attribute with the formatted initial date from the picker
.attr('title', $.datepicker.formatDate('yy-mm-dd', dt.datepicker('getDate')));
});