Jquery 输入字段中需要日期选择器,但不可更改

Jquery 输入字段中需要日期选择器,但不可更改,jquery,datepicker,readonly,required,Jquery,Datepicker,Readonly,Required,我使用jQueryDatePicker,但找不到解决问题的方法 $( "#birthday").datepicker({ maxDate: '0-15y', minDate: '0-30y', dateFormat: 'yy-mm-dd', defaultDate: '0 -18y',

我使用jQueryDatePicker,但找不到解决问题的方法

$( "#birthday").datepicker({
                        maxDate: '0-15y',
                        minDate: '0-30y',
                        dateFormat: 'yy-mm-dd',
                        defaultDate: '0 -18y',
                        changeMonth:true,
                        changeYear:true
                        });
我有一个datepicker必需的输入字段,其中定义了最小日期和最大日期。 在弹出窗口中工作正常,但我可以在输入框中更改最小日期之前或最大日期之后的日期

我试图将该字段设置为只读,这样就没有人可以在输入字段中更改它,但是在弹出窗口中,我的字段不再是必需的

<input type='text' name='birthday' id='birthday' value='".$birthday."' placeholder='YYYY-MM-DD' style='width:100%;' required ".$pat_date.">

谢谢你的帮助


BG

字段不能既是
必填项
又是
只读项

相反,当用户专注于您的
时,您可以阻止默认操作:


字段不能既是
必填项
又是
只读项

相反,当用户专注于您的
时,您可以阻止默认操作:


向字段添加事件处理程序,以便在字段具有焦点时,将当前日期存储在字段中。向字段添加另一个事件处理程序,以便在字段发生更改时,可以检查字段中的新日期,并查看其是否有效。如果不是,则可以恢复到旧日期,或者向用户发出警告


这样,该字段就可以保持可编辑状态,这样他们可以根据需要手动键入日期,并且该字段仍有一些您需要的验证。

向该字段添加事件处理程序,以便在该字段具有焦点时,将当前日期存储在该字段中。向字段添加另一个事件处理程序,以便在字段发生更改时,可以检查字段中的新日期,并查看其是否有效。如果不是,则可以恢复到旧日期,或者向用户发出警告


这样,该字段就可以保持可编辑状态,这样他们可以根据需要手动输入日期,并且该字段仍有一些您需要的验证。

PERFECT。这就是我要找的!完美的这就是我要找的!
$( "#birthday").datepicker({
    maxDate: '0-15y',
    minDate: '0-30y',
    dateFormat: 'yy-mm-dd',
    defaultDate: '0 -18y',
    changeMonth:true,
    changeYear:true
}).on('keypress', function(e){ e.preventDefault(); });