Javascript 从<;输入类型=";日期“&燃气轮机;

Javascript 从<;输入类型=";日期“&燃气轮机;,javascript,php,validation,date,Javascript,Php,Validation,Date,我想验证日期输入类型的字段。目前,我正在尝试使用javascript方法验证字段 这是我使用的代码 var RE_DOB = /^([0-9]{2})\/([0-9]{2})\/([0-9]{4})$/; 我当前的日期格式是2014年7月29日 只是想知道如何验证日期输入类型的字段。我可以在文本上实现这些功能,但如果输入类型是日期,那就更好了,因为用户可能正在移动设备上使用网站,在这些设备上会显示日期选择器。在内部,日期输入的值是:yyy-MM-DD 然而,从外部来看,日期输入将使用用户计算机

我想验证日期输入类型的字段。目前,我正在尝试使用javascript方法验证字段

这是我使用的代码

var RE_DOB = /^([0-9]{2})\/([0-9]{2})\/([0-9]{4})$/;
我当前的日期格式是2014年7月29日


只是想知道如何验证日期输入类型的字段。我可以在文本上实现这些功能,但如果输入类型是日期,那就更好了,因为用户可能正在移动设备上使用网站,在这些设备上会显示日期选择器。

在内部,日期输入的值是:
yyy-MM-DD

然而,从外部来看,日期输入将使用用户计算机定义的任何格式(区域设置感知),使人们易于使用


您的验证应该查找
^\d{4}-\d\d-\d$
(当然,仅此一项不足以进行日期验证,除非
9876-54-32
对您来说是有效日期!)

您仍然可以将所有内容输入到
type=“date”
输入字段中。
type=“date”
属性所做的唯一一件事就是显示日期选择器(在大多数移动设备上为e.x.)。尚未实现浏览器验证

您需要的是:

  • 服务器端验证(PHP)
  • 可选客户端验证(JS)
  • 它们取决于您喜欢接受的格式。如前所述,您可以使用JavaScripts
    match()
    string函数在客户端站点上验证输入。比如说

    if(yourInput.match(/^\d{4}-\d{2}-\d{2}$/) == false)
        alert('invalid date');
    
    根据客户端的
    YYYY-MM-DD
    模式进行验证


    在服务器端,您应该使用或并检查解析错误,这将告诉您用户输入的日期无效。

    兼容HTML5的浏览器不应该已经提供客户端验证吗?还是说JS中的服务器端验证?