我在一个表单上有一个文本框,并且我创建了一个日期选择器,如下所示:
$("#txtBirthDate").datepicker({
changeMonth: true,
changeYear: true,
yearRange: '1920:2999',
maxDate: '+0d',
dateFormat: 'dd-mm-yy'
});这工作得很好,但发生的情况是:
我按下文本框,日期选择器就会出现,选择一个日期。但是,如果我想选择另一个日期,我首先需要单击另一个字段,然后单击上一步的出生日期字段。当我第二次按下出生日期字段,第一次没有单击另一个字段时,日期选择器没有显示。
这里我漏掉了什么?
HTML代码:
<label>Birthdate</label>
<input type="text" name="txtBirthDate" id="txtBirthDate" class="input" readonly='true' value="<?echo $_POST["txtBirthDate"]; ?>" />发布于 2012-03-26 17:48:07
Ok问题是焦点所在。选择日期后,该字段不会失去焦点。通过以下方式解决:
$("#txtBirthDate").datepicker({
changeMonth: true,
changeYear: true,
yearRange: '1920:2999',
showButtonPanel: true,
maxDate: '+0d',
dateFormat: 'dd-mm-yy',
onClose: function(dateText, inst) {
setTimeout(function(){
$("#txtBirthDate").blur();
}, 200);
}
});谢谢你试图和我一起解决这个问题!
发布于 2012-03-25 21:46:29
这在我身上发生过一次,只需遵循这篇文章,看看有什么不同,但我认为你错过了:
showButtonPanel: true,在您的代码.Thanks中
发布于 2016-07-23 07:57:33
对我有效的非常简单的答案是包含下面这行
$('#ui-datepicker-div').remove();在初始化datepicker元素之前。
https://stackoverflow.com/questions/9860558
复制相似问题