当我们的事件编辑页面加载时,有两个日期字段使用了jQuery日期选择器,当我单击其中一个字段时,选择器也会出现。
加载文档时初始化日期选取器。
$ ->
$(':input.date').datepicker(dateFormat: 'dd.mm.yy')
并且会自动添加类"日期选择器"
<input class="span1 date hasDatepicker" id="event_application_opening_at" name="event[application_opening_at]" size="30" type="text">
由于可以向事件添加其他日期,因此当用户单击"添加日期"链接时,我们将创建额外的嵌套日期字段。
尽管"hasDatepicker"类已正确分配给这些字段,但日期选择器不适用于这些新创建的字段。看起来发生这种情况是因为日期选择器已经启动。我尝试应用 destroy() 函数,然后在整个页面内容上重新启动日期选择器,但这不起作用。
有人可以帮助我吗?
试试这个
$(":input.date").live("click", function(){
$(this).datepicker({
dateFormat: 'dd.mm.yy'
});
});
更新:
$(":input.date").live("click", function(){
$(this).datepicker({
dateFormat: 'dd.mm.yy'
});
$(this).datepicker('show');
});
<</div>
div class="one_answers"> hynxnat的答案的另一种方法是绑定到您用于添加字段的任何代码的"after:insert"事件。如果将日期选取器代码添加到该事件,它将确保在动态插入字段后,它将绑定到页面上的字段。
这将假设您正在使用类似 Cocoon 宝石的东西来添加额外的字段。