代码之家  ›  专栏  ›  技术社区  ›  Keng

网页字段验证

  •  2
  • Keng  · 技术社区  · 16 年前

    我需要验证网页上的日期/时间字段,但希望它在不重新加载网页的情况下进行验证,并希望为用户提供“即时”反馈。

    最佳/最简单的解决方案是什么? 顺便说一句:最简单的分数占总分的65%

    编辑: 如果最好是65%的总分呢?

    10 回复  |  直到 16 年前
        1
  •  3
  •   AdamSane    16 年前

    如果您想使用javascript,那么它有内置的日期验证功能。但是,如果不想使用javascript路由,可以将UI更改为下拉控件,这将限制用户输入无效数据的能力。您仍然需要检查服务器端以确保没有人在2月30日提交。

        2
  •  2
  •   Dhaust    16 年前

    看看这个 javascript date validation 功能。

    它使用javascript、正则表达式和文本输入的“onblur”事件。

        3
  •  2
  •   sergtk    16 年前

    @戴维·H·奥斯特

    使用onblur进行验证是有问题的,因为有些人使用Enter键而不是鼠标提交表单。将onblur和表单的onsubmit事件结合使用可能是更好的解决方案。当我对表单进行JS验证时,我会针对keyup事件运行。这给了用户即时反馈他们的输入是否正确。你也可以(我也这样做了)设置检查,这样用户在离开字段之前不会收到“不正确”的消息(因为如果还没有完成,你不应该告诉他们不正确)。

        4
  •  1
  •   sergtk    16 年前

    我建议对日期使用下拉列表,如上所示。我真的想不出任何理由不去——你想让用户从预先定义的数据中选择,而不是给你一些你无法预料的独特的东西。

    您可以使用一点javascript避免2月30日(使days字段根据月份动态填充)。

        5
  •  1
  •   Dhaust    16 年前

    @ Brian Warshaw
    这是一个很好的观点,你不要忘记那些通过键盘导航的用户(呃,我)。

    谢谢你让我们注意到这一点。

        6
  •  0
  •   mbillard    16 年前

    一个简单的javascript方法,在提交时读取输入字段中的内容并对其进行验证。如果无效,则返回false,这样表单就不会提交到服务器。

    ... onSubmit="return validateForm();" ...
    

    确保在服务器端也进行了验证,这很容易绕过JavaScript验证。

        7
  •  0
  •   Jon Limjap    16 年前

    如果您使用的是ASP.NET,那么它具有验证程序控件,您可以指向文本框,然后使用文本框验证正确的日期/时间格式。

        8
  •  0
  •   Matthew Schinckel    16 年前

    在以太中有两个日期小部件。然后您只能允许有效的输入。

        9
  •  0
  •   Galbrezu    16 年前

    我在一些项目中使用了这一小段JS代码,它将与其他一些项目一起快速、轻松地完成日期。

    Link

        10
  •  0
  •   Keng    16 年前

    看起来有一个关于ASP.NET Ajax控件工具包的很棒的视频,它提供了maskedEdit控件和maskedEditValidator控件,效果很好。对初学者来说不容易,但反馈非常及时。

    不过,谢谢你的回答!

    asp.net

    很遗憾,我不能接受这个答案 .