HTML5 'Required' 表单验证属性:好主意还是坏主意
HTML5 'Required' attribute for form validation: Good idea or bad idea
我正在使用 HTML 5 个表单中最简单的一个,并希望对复选框使用 'required' 属性以确保用户在提交表单时单击它。
我是否应该进行一些服务器端验证 - 以防有人使用不支持 html5 的浏览器?
更多信息:
我的表单如下所示:
[] 我接受条款和条件
提交
代码:
<input type="checkbox" required> I accept the terms and conditions<br />
<input type="submit" value="submit"/>
客户端表单验证是增强用户体验的好方法,它还提供了一些有助于传达需要输入的样式。
但是您 始终 仍然必须验证在服务器上提交的任何数据,以确保数据是干净和安全的。 required
属性可以被恶意用户操纵。
实际需要 CSS 所有浏览器都支持伪 class(不行,IE8 除外),如您所见
http://caniuse.com/#search=form%20validation
无论如何,您总是需要服务器端验证,因为无论如何客户端检查的数据都必须被视为不安全。
永远不要相信客户端的任何数据(无论是HTML还是JS,都是可以更改的。客户端的验证只是为了更好的用户体验。真正的安全在服务器端。
仅 保存您在UI 背后的逻辑是不够的。某些 HTML 表单验证 在某些浏览器中不起作用 。所以服务器端验证是必须的!
我正在使用 HTML 5 个表单中最简单的一个,并希望对复选框使用 'required' 属性以确保用户在提交表单时单击它。
我是否应该进行一些服务器端验证 - 以防有人使用不支持 html5 的浏览器?
更多信息:
我的表单如下所示:
[] 我接受条款和条件
提交
代码:
<input type="checkbox" required> I accept the terms and conditions<br />
<input type="submit" value="submit"/>
客户端表单验证是增强用户体验的好方法,它还提供了一些有助于传达需要输入的样式。
但是您 始终 仍然必须验证在服务器上提交的任何数据,以确保数据是干净和安全的。 required
属性可以被恶意用户操纵。
实际需要 CSS 所有浏览器都支持伪 class(不行,IE8 除外),如您所见
http://caniuse.com/#search=form%20validation
无论如何,您总是需要服务器端验证,因为无论如何客户端检查的数据都必须被视为不安全。
永远不要相信客户端的任何数据(无论是HTML还是JS,都是可以更改的。客户端的验证只是为了更好的用户体验。真正的安全在服务器端。
仅 保存您在UI 背后的逻辑是不够的。某些 HTML 表单验证 在某些浏览器中不起作用 。所以服务器端验证是必须的!