FORM标签语义html5之外的表单元素?

如果我有一个SELECT标记将根据用户select过滤表,SELECT标记是否需要在FORM标记(是有效的HTML5),如果JS禁用(如果我们将显示整个表或“更多”链接,而不是在select表单action / submit选项时做一个服务器端filter(我们可以在JS中写入select,如果JS禁用,它将从标记中消失。

或者不pipe使用情况如何,所有的表单元素都需要放在表单标签中(因此也是一个空的“action”属性值)。

我知道HTML5几乎允许任何事情,我只是无法在W3上find明确的答案,所以认为我会得到你的想法。 希望是有道理的。 干杯。

所有的表单控件都可以在任何需要expression内容的地方使用,这意味着它们可以出现在文档主体的任何地方。 如果你不需要将它们提交回服务器,那么就不需要将它们与表单关联,但是我注意到在某些浏览器中,你不能利用表单validationfunction,除非这些元素可能会被提交。

HTML5新增的一个特性是表单控件不再需要作为form元素的直接子form来提交, form属性允许你指定元素应该被提交的表单的id

看起来在HTML5中,表单元素可以在<form>标签之外并且仍然有效;

 <!DOCTYPE html> <html> <head> <title>Just making this valid</title> </head> <body> <select> <option value="1">One</option> <option value="2">Two</option> <option value="3">Three</option> </select> </body> </html> 

上面的代码validation成功(减去明显的字符编码错误)。 我还没有阅读整个HTML5规范,但是validation器在这些问题上通常是正确的。