首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将datepicker()放在动态创建的元素上- JQuery/JQueryUI

将datepicker()放在动态创建的元素上- JQuery/JQueryUI
EN

Stack Overflow用户
提问于 2012-05-03 22:09:45
回答 13查看 148.7K关注 0票数 123

我已经动态创建了文本框,并且我希望它们中的每一个都能够在单击时显示日历。我使用的代码是:

代码语言:javascript
复制
$(".datepicker_recurring_start" ).datepicker();

它只适用于第一个文本框,即使我所有的文本框都有一个名为datepicker_recurring_start的类。

非常感谢您的帮助!

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2012-05-03 22:18:26

诀窍是这样的:

代码语言:javascript
复制
$('body').on('focus',".datepicker_recurring_start", function(){
    $(this).datepicker();
});​

DEMO

$('...selector..').on('..event..', '...another-selector...', ...callback...);语法表示:

为事件焦点(在我们的例子中是‘body’)添加一个监听器到...selector.. (在我们的例子中是body)。对于匹配选择器...another-selector... (在我们的示例中为.datepicker_recurring_start)的匹配节点的所有后代,应用事件处理程序...callback... (在我们的示例中为内联函数)

请参阅http://api.jquery.com/on/,特别是关于“委托事件”的部分

票数 289
EN

Stack Overflow用户

发布于 2014-02-12 17:37:12

对于下面的我来说,jquery起作用了:

将"body“更改为”document“

代码语言:javascript
复制
$(document).on('focus',".datepicker_recurring_start", function(){
    $(this).datepicker();
});

感谢skafandri

注意:请确保每个字段的id不同

票数 49
EN

Stack Overflow用户

发布于 2015-12-17 20:16:07

skafandri +1的出色回答

这只是为了检查hasDatepicker类而更新的。

代码语言:javascript
复制
$('body').on('focus',".datepicker", function(){

    if( $(this).hasClass('hasDatepicker') === false )  {
        $(this).datepicker();
    }

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

https://stackoverflow.com/questions/10433154

复制
相关文章

相似问题

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