首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JQuery UI日期选择器:如何在日历呈现后绑定事件?

JQuery UI日期选择器:如何在日历呈现后绑定事件?
EN

Stack Overflow用户
提问于 2011-03-05 11:05:18
回答 3查看 31.6K关注 0票数 8

我正在使用datepicker。绑定事件的通常方法是:

代码语言:javascript
复制
$('.selector').datepicker({
   beforeShowDay: function(date) { ... }
});

我需要的是在呈现日历之后绑定beforeShowDay事件。因此,假设我首先呈现日历:

代码语言:javascript
复制
$('.mySpecialContainer').datepicker({
   //in this moment, for some reason, I am not allowed to bind nothing (that's not me who renders the calendar, that's why I am not allowed)
});

然后,如果我尝试用通常的方式绑定一些东西:

代码语言:javascript
复制
$('.mySpecialContainer').datepicker({
   beforeShowDay: function(date) { ... }
});

当然,日历将在'.mySpecialContainer'中再次呈现,而不仅仅是绑定事件。我试过了:

代码语言:javascript
复制
$('.mySpecialContainer').bind('beforeShowDay', function(date) { ... });

但这只是一个孤注一掷的行动:)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-05 11:47:44

我不明白为什么不能对特定的datepicker事件(或大多数datepicker事件)调用bind。大多数其他jQueryUI小部件都允许事件的后期绑定。

但是,您可以尝试执行以下操作。hasDatepicker应用于日期选择器,在这些元素上再次调用.datepicker并不会重新初始化小部件,它只是修改了一个选项:

代码语言:javascript
复制
$('.hasDatepicker').datepicker("option", "beforeShowDay", 
    function(date) { ... });
票数 10
EN

Stack Overflow用户

发布于 2014-05-10 05:09:16

代码语言:javascript
复制
$('.ui-datepicker-current-day').click();
票数 1
EN

Stack Overflow用户

发布于 2011-03-05 11:14:08

你需要.live()http://api.jquery.com/live/

代码语言:javascript
复制
$('.mySpecialContainer').live('beforeShowDay', function(date) { ... });

转念一想,我想我误解了这个问题...你需要有一个没有函数的datepicker,然后再给它一个函数?你最好去掉datepicker,再把它放回原处。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5201367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档