2009-07-10 123 views
0

我有2个输入字段,我使用它与一个datepicker这样jQuery UI的DatePicker的问题

$("#depart, #return").datepicker({ 
    showOn: 'both', 
    buttonImage: 'images/icon_calendar.gif', 
    buttonImageOnly: true, 
    numberOfMonths:2, 
    dateFormat: 'dd-mm-yy' 
}); 

在某些时候,我想删除返回现场,我与卸下摆臂做()方法。然后使用.after方法,我再次将该字段添加到表单中。但datepicker功能不可用。

它是有道理的,但我不知道如何重新分配日期选择器到新创建的字段?

+3

为什么不暂时隐藏“回归”的东西呢? – TheVillageIdiot 2009-07-10 12:16:16

回答

0

再次添加字段后,你需要调用.datepicker场上

Working Demo to demonstrate

注,试用:由于添加按钮将添加一个id =“return”的文本输入,添加多个将会混淆datepicker所连接的输入。

$("[where you're inserting]").after("<input id='return' type='text' />"); 

$('#return').datepicker({ 
    showOn: 'both', 
    buttonImage: 'images/icon_calendar.gif', 
    buttonImageOnly: true, 
    numberOfMonths:2, 
    dateFormat: 'dd-mm-yy' 
    }); 

当你需要我再次建议只是hiding输入然后showing它,而不是删除然后重新插入DOM。

0

我相信你必须在重新添加它之后重新分配。

事情是这样的:

$("#return").remove(); 

$("something").after(myReturnfield); 

$("#return").datepicker(myDatepickerSettings); 
+0

这就是我的想法,但我不知道如果当我删除它的初始datepicker对象被销毁或仍然活动。 – user119210 2009-07-10 11:53:28