首先我要说的是,我们验证了服务器端的每个字段,因此这是一个关于客户端可用性的问题.
关于何时使用javascript验证和格式化html表单输入字段的传统智慧是什么?
例如,我们有一个电话号码字段.我们允许数字,空格,括号和连字符.我们希望该字段有十位数.此外,我们希望该字段看起来像(123)456-7890,即使用户没有这样输入.
好像我们可以
用户退出字段时验证并格式化.
对输入的每个字符进行验证和格式化.
拦截击键并防止用户输入错误的字符.
以上的一些组合(例如,输入格式和退出时验证,防止输入和退出格式等)
[已添加 ]等待并在用户点击提交时进行所有验证和格式化.
我已经看到它完成了所有这些方法,但我无法从可用性的角度找到最佳(甚至普遍接受)的信息,更重要的是,为什么.
[ 编辑:一些澄清]
我们绝对不执行任何格式标准.当我说格式时,我的意思是我们将使用javascript重写事物,使它们看起来很好.如果用户键入1234567890,我们将其更改为(123)456-7890.没有可能失败的"格式化规则".
我将此与验证区分开来,因为如果它们没有输入足够的数字,我们必须让它们修复它.
我想我应该将这个问题重新解释为"什么是关于何时验证以及何时格式化......的传统智慧?
到目前为止答案中的好消息!
编辑:我接受我自己的答案,希望其他人会发现这个链接和我一样有用.