1
3
如果您想使用javascript,那么它有内置的日期验证功能。但是,如果不想使用javascript路由,可以将UI更改为下拉控件,这将限制用户输入无效数据的能力。您仍然需要检查服务器端以确保没有人在2月30日提交。 |
2
2
看看这个 javascript date validation 功能。 它使用javascript、正则表达式和文本输入的“onblur”事件。 |
3
2
@戴维·H·奥斯特 使用onblur进行验证是有问题的,因为有些人使用Enter键而不是鼠标提交表单。将onblur和表单的onsubmit事件结合使用可能是更好的解决方案。当我对表单进行JS验证时,我会针对keyup事件运行。这给了用户即时反馈他们的输入是否正确。你也可以(我也这样做了)设置检查,这样用户在离开字段之前不会收到“不正确”的消息(因为如果还没有完成,你不应该告诉他们不正确)。 |
4
1
我建议对日期使用下拉列表,如上所示。我真的想不出任何理由不去——你想让用户从预先定义的数据中选择,而不是给你一些你无法预料的独特的东西。 您可以使用一点javascript避免2月30日(使days字段根据月份动态填充)。 |
5
1
@ Brian Warshaw
谢谢你让我们注意到这一点。 |
6
0
一个简单的javascript方法,在提交时读取输入字段中的内容并对其进行验证。如果无效,则返回false,这样表单就不会提交到服务器。
确保在服务器端也进行了验证,这很容易绕过JavaScript验证。 |
7
0
如果您使用的是ASP.NET,那么它具有验证程序控件,您可以指向文本框,然后使用文本框验证正确的日期/时间格式。 |
8
0
在以太中有两个日期小部件。然后您只能允许有效的输入。 |