我正在努力解决以下问题:我动态创建输入元素,并尝试将日期选择器附加到它。但它只有在我点击输入元素之外的某个位置然后再次输入时才有效。控制台日志在第一次点击时工作正常,所以我不知道这里有什么问题?
$(document).ready(function(){
$("div.single_condition").on("click", "input", function(){
if($("select.select_operator").val() == '>'){
console.log("O.K.");
$(this).datepicker();
}
else {
console.log("NOT O.K.");
}
});
});
答案 0 :(得分:3)
即使使用.datepicker()
正确地将日期选择器绑定到输入,您也需要在第一次点击时显示它。
试试这段代码,
$(this).datepicker().datepicker("show");
更改了JS :
$("div.single_condition").on("click", "input", function () {
if ($("select.select_operator").val() == '>') {
console.log("O.K.");
$(this).datepicker().datepicker("show");
} else {
console.log("NOT O.K.");
}
});
建议 :在追加动态元素而不是.datepicker()
后绑定click
。