我在文档就绪方法上使用jquery创建了datepicker,我的代码如下所示
$(document).ready(function(){
$("#setdate").html('<input type="text" class="datepicker">');
});
所以我的文本框是在运行时创建的,当我点击该文本框时,我添加了类名作为datepicker,它没有显示datepicker对话框,因为它在页面加载时创建,所以我添加了以下代码
$(this).on("click", ".datepicker", function(){
$(".datepicker").datepicker({
changeMonth: true,
changeYear: true
});
});
当我第一次点击datepicker文本框时它只显示了一下,但是下一次单击它打开了datepicker对话框,任何人都知道为什么会发生这种情况,我想先点击打开datepicker怎么可能?
答案 0 :(得分:0)
您的逻辑略微不同步。您只是在单击时将文本框转换为日期选择器。这意味着在第一次单击之前它只是一个常规文本框。 你想要做的是在pageload上将文本框变成一个日期选择器。
这应该有效:
$(document).ready(function(){
//create the text box
$("#setdate").html('<input type="text" class="datepicker">');
//initialise the datepicker code on the text box
$(".datepicker").datepicker({
changeMonth: true,
changeYear: true
});
});