微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery UI Datepicker maxDate选项的手动日期条目验证

我在页面上有jQuery datepicker,需要允许手动输入日期,但还需要验证日期不超过一天.选择器控件已通过maxDate限制,但当手动输入日期时,他们可以提前一天输入日期.一个人(我)如何阻止它?这是我到目前为止:
$(".datepicker").attr("placeholder","mm-dd-yyyy").datepicker({
    showOn: "button",maxDate: "+1",showOtherMonths: true
});

解决方法

好吧,上面的答案是正确的,但它没有验证表格,用户仍然可以提交表格,

我已经做了一些研究,但找不到ny,最后我写了这个功能,工作正常并验证表格,并且不允许提交表格,直到输入正确的日期,希望它有所帮助!

您需要做的唯一事情是添加代码,然后这将应用于’datePicker’类的所有字段.

$(".datePicker").datepicker({
            dateFormat: 'd/mm/yy',changeMonth: true,changeYear: true,firstDay: 1,minDate: Date.parse("1900-01-01"),maxDate: Date.parse("2100-01-01"),yearRange: "c-90:c+150"
        });

        // validation in case user types the date out of valid range from keyboard : To fix the bug with out of range date time while saving in sql 
        $(function () {
            $.validator.addMethod(
                "date",function (value,element) {

                    var minDate = Date.parse("1900-01-01");
                    var maxDate = Date.parse("2100-01-01");
                    var valueEntered = Date.parse(value);

                    if (valueEntered < minDate || valueEntered > maxDate) {
                        return false;
                    }
                    return !/Invalid|NaN/.test(new Date(minDate));
                },"Please enter a valid date!"
            );
        });

原文地址:https://www.jb51.cc/jquery/181418.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐