jQuery Datepicker只显示一次

时间:2012-03-25 13:38:10

标签: php javascript jquery html jquery-ui

我在表单上有一个文本框,我创建了一个这样的日期选择器:

$("#txtBirthDate").datepicker({
                    changeMonth: true,
                    changeYear: true,
                    yearRange: '1920:2999',
                    maxDate: '+0d',
                    dateFormat: 'dd-mm-yy'
        });

这很好用,但发生的事情是:

我按下文本框,日期选择器显示得很好,选择一个日期。但是如果我想选择另一个日期,我首先需要点击另一个字段,然后点击生日日期字段。当我第二次按下birthdate字段而不点击另一个字段时,datepicker不会显示..

我在这里缺少什么?

HTML代码:

<label>Birthdate</label>
<input type="text" name="txtBirthDate" id="txtBirthDate" class="input" readonly='true' value="<?echo $_POST["txtBirthDate"]; ?>" />

3 个答案:

答案 0 :(得分:1)

好的问题是焦点。在选择日期之后,该领域没有失去焦点。解决了:

$("#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);
    }
});

感谢您尝试与我一起解决问题!

答案 1 :(得分:0)

它发生在我身上只是按照文章看看有什么不同,但我想你错过了:

 showButtonPanel: true,
你的代码中的

。谢谢

答案 2 :(得分:0)

对我有用的非常简单的答案是包括这一行

 $('#ui-datepicker-div').remove();

在初始化datepicker元素之前。