jQuery日期选择器未在文本框中设置maxDate

jQuery日期选择器未在文本框中设置maxDate,jquery,jquery-ui-datepicker,Jquery,Jquery Ui Datepicker,我在代码中使用jquery.ui.datepicker。我已将maxDate设置为+0,即当前日期。因此,在日历控件中,未来日期被禁用,但用户仍可以在文本框中输入未来日期。如何限制用户只输入小于maxDate的日期,如果用户输入任何未来日期,我希望在模糊的文本框中显示当前日期 $txtDate.datepicker({ dateFormat: MyPage.config.dateFormat, onClose: function (dateText, inst) {

我在代码中使用jquery.ui.datepicker。我已将
maxDate
设置为
+0
,即当前日期。因此,在日历控件中,未来日期被禁用,但用户仍可以在文本框中输入未来日期。如何限制用户只输入小于maxDate的日期,如果用户输入任何未来日期,我希望在模糊的文本框中显示当前日期

$txtDate.datepicker({
    dateFormat: MyPage.config.dateFormat,
    onClose: function (dateText, inst) {
        try {
            $.datepicker.parseDate(MyPage.config.dateFormat, dateText);
        } catch (e) {
            $txtDate.val('');
        };
    },
    maxDate: '+0'
});
$txtDate.datepicker('setDate', new Date()).blur(function () {
    try {
        if ($txtDate.val() == '') {
            $txtDate.datepicker('setDate', new Date());
        }
    }
    catch (ex) {
        var MyEx = MyWeb.Exception(ex);
        MyEx.AddData("Method", "$txtDate.datepicker('setDate', new Date()).blur");
        $.errorhandler("HandleError", MyEx);
    }
});

只需将其放入您的输入html元素中:

readonly="readonly"
并使用服务器端技术将值默认为今天的日期:

<input type="text" readonly="readonly" name="date" id="date" value="<?php echo date('Y-m-d');?>">

。但这将限制用户输入过去的日期。我希望用户要么从选取器中选择日期,要么手动键入(日期小于maxDate)。哦,很抱歉,我误解了你的问题,我已经使用了很多日期选取器,而且我总是阻止实际键入文本,我想人们还是更喜欢使用日期选取器,但这是你的选择。。。。