jquery datepicker onChangeMonthYear
Posted
技术标签:
【中文标题】jquery datepicker onChangeMonthYear【英文标题】: 【发布时间】:2010-11-08 16:49:40 【问题描述】:我在我的应用程序中使用 jquery ui datepicker。 我创建了一个内联日期选择器。 我遇到了onChangeMonthYear 的问题。我已将示例简化为最低限度。
点击“上一个”或“下一个”,日历应该:-
-
相应地转到上/下个月。
将该月的第一天设置为当前选定的日期。
提醒该日期
问题在于#2。
我正在使用setDate 来执行此操作,它以无限递归结束。因为,我在 onChangeMonthYear 中调用 setDate。 setDate 也在内部触发 onChangeMonthYear。
点击 prev/next 时如何实现这三件事。
【问题讨论】:
【参考方案1】:尝试设置一个可以在事件处理程序中查询的标志,以防止无限循环:
var changingDate = false;
$('.selector').datepicker(
onChangeMonthYear: function(year, month, inst)
if (changingDate)
return;
changingDate = true;
// your setDate() call here
changingDate = false;
);
【讨论】:
【参考方案2】:无限递归意味着您通知的月份不正确。
确保你从month
减1
【讨论】:
不正确。这是因为 onChangeMonthYear() 也会触发任何更改。在这种情况下,很可能是 setDate() 引起的。【参考方案3】:onChangeMonthYear: function(year, month, inst)
$(this).datepicker( "setDate", new Date(year, month-1, 1) );
【讨论】:
以上是关于jquery datepicker onChangeMonthYear的主要内容,如果未能解决你的问题,请参考以下文章
JQuery Daterangepicker onchange 事件
Ant 设计:从 onChange 中的 datepicker 获取 Id
Parsleyjs 日期验证不适用于 Onchange 等 Datepicker 事件
如何在 JS 函数 onchange 事件中获取 Bootstrap Datepicker 的值?