【发布时间】:2012-06-22 20:21:57
【问题描述】:
如果当月没有航班,我被要求从 jQuery 日期选择器的月份下拉菜单中删除月份。我最初的想法是,在 beforeShow 事件中,向 year 下拉列表添加一个更改事件处理程序,该处理程序将关闭并调用一个名为 monthHasFlights( ) 为当年的每个月(第一次加载日期选择器时手动调用它)。如果 monthHasFlights() 返回 false,我将删除该月。 问题是 ...我的处理程序不会附加。
所以,在 beforeShow 事件处理程序中我有这个:
$('.ui-datepicker-year').change(function(){setDropdownMonths()});
但事件永远不会附加,即使我看到这一行在 firebug/tools 中执行我对 jQuery 事件绑定的理解是,您可以根据需要多次分配更改事件,并且处理程序将按照您的顺序触发创建它们..但我想我错了?只是当我尝试附加事件处理程序时下拉菜单还不存在吗?我确实尝试了 100 的 setTimeout,但我的事件仍然没有附加。任何建议表示赞赏。
【问题讨论】:
-
在使用数据选择器的地方发布您的 HTML 代码以及 JQuery 初始化代码。创建 jsfiddle.com 示例的最佳方式
-
日期选择器附加到具有 css 类“datepickerOut”的文本框,因此:
$('.datepickerOut').datepicker(dpOpts);其中 dpOpts 是 JSON 样式的选项集合。
标签: jquery events select datepicker handler