我有一个非常简单的问题 - 有没有办法只为某些选定的输入禁用HTML5验证(而不是为整个表单设置"novalidate")?
我的意思是像<input type='number' required无效的东西>.但这不起作用.
你可能会问为什么我需要type ="number"或"required"呢?好吧,我需要它,因为我的框架使用它进行自己的验证.
编辑
这是一个特殊的输入 - 出生数.我需要它的类型编号(因为移动设备),但它的值主要用于"/"(例如860518/8757),这对于类型编号不是有效字符.所以我需要用户填写它而不用斜线(8605188757).问题是当html5输入中填写了无效值(例如数字类型中的"fsda")时,它似乎是空的,没有值.
因此,当用户以错误的格式填充值(860518/8757)时,html验证被禁用,因此JS验证运行,它被验证为空字段.所以错误信息就像"请填写字段出生号"(这真的令人困惑),而不是"抱歉,错误的格式".
我的解决方案是为此字段启用html5验证(因此在填写错误的格式时显示默认浏览器消息)但是对其他字段禁用它,以便仅使用我的JS验证来验证它们.
novalidate属性仅适用于表单标签,不能应用于表单控件。
您可以在框架验证后删除 js 中的 required 属性:
\n\n$('[Selector]').removeAttr('required');\xe2\x80\x8b\xe2\x80\x8b\xe2\x80\x8b\xe2\x80\x8b\xe2\x80\x8b\nRun Code Online (Sandbox Code Playgroud)\n\n现在所选字段将不会被验证。
\n| 归档时间: |
|
| 查看次数: |
9106 次 |
| 最近记录: |