【发布时间】:2016-06-29 07:47:05
【问题描述】:
我有两个输入字段,一个直接在 html 页面中编码,另一个通过 JavaScript 附加,我已经为两个具有不同 id 的字段初始化了 jQuery datepicker。
我正在使用 jQuery ui 日期选择器
html页面中的一个输入字段
<input id="datepicker1" name="" type="text" value=""class="form-control" placeholder="dd/mm/yyyy">
通过javascript代码附加的其他
var datepicker2 = '<div class="control-group"> <label class="control-label">Cheque Date</label><div class="controls"> <input placeholder="DD/MM/YYYY" id="datepicker2" name="" type="text" onkeyup="" class="form-control"> </div> </div>'
$("#drop1").html(datepicker2);
$( "#datepicker1" ).datepicker();
$( "#datepicker2" ).datepicker();
问题是日期选择器在 html 页面中显示静态输入字段,而在通过 JavaScript 追加时未显示在动态字段中。
是否可以为动态生成的字段初始化日期选择器?
【问题讨论】:
-
将启动日期选择器的代码包装在
$(document).ready()中。问题是您试图在呈现之前访问元素。 -
这些字段显示在模式(弹出窗口)中。
-
使用
.datepicker( "refresh" )也许能解决你的问题。 -
问题是当
.datepicker()被调用时,元素没有被渲染。检查元素是否存在,然后初始化它
标签: javascript php jquery html jquery-ui-datepicker