我正在尝试将jQuery UI datepicker用作内联日历。用户单击日历上的日期,并运行AJAX请求以仅从所选日期返回数据。
我编写的AJAX函数在从按钮调用时工作正常,但是我无法让日期选择器调用它。想法是用户点击日期然后调用该函数。我认为这就是onSelect事件的用途,但它似乎不起作用。
以下是我在日期选择器上使用的代码。
$("div.datepicker").datepicker({
firstDay: 1,
beforeShowDay: $.datepicker.noWeekends,
altField: 'input#datepicker_val',
onSelect: alert("Select event worked.") // this will be replaced with the ajax function call
});
datepicker初始化正常。它出现并按预期运行,但无论我尝试什么(我花了几个小时查找可能的解决方案),我都无法显示出警报。我错过了什么吗?
答案 0 :(得分:1)
尝试EmCo在评论中提出的建议。如果它不起作用,你也可以通过编写自己的事件处理程序来“破解”它。您必须找到匹配的选择器以选择日历中的日期,然后将您的事件附加到它们。
$(Matching_day_selector).live('click', function(){
// do what you need
});
编辑:使用live()可能是必要的;根据{{3}}匹配选择器应为:
$('.ui-state-default')
答案 1 :(得分:1)
为清楚起见,我最终得到的工作代码如下。
$("div.datepicker").datepicker({
firstDay: 1,
beforeShowDay: $.datepicker.noWeekends,
altField: 'input#datepicker_val',
onSelect: function(){
updateTable("datepicker")
}
});
非常感谢EmCo的解决方案,并对他的意见感到不满。