Javascript Can';t将表单标记添加到表中

Javascript Can';t将表单标记添加到表中,javascript,html,reactjs,react-native,Javascript,Html,Reactjs,React Native,当我将表单标记添加到表中时,我的输入字段被隐藏,我得到如下警告: index.js:1446 Warning: validateDOMNesting(...): <tr> cannot appear as a child of <div>. index.js:1446 Warning: validateDOMNesting(...): <form> cannot appear as a child of <tbody>. index.js:14

当我将表单标记添加到表中时,我的输入字段被隐藏,我得到如下警告:

index.js:1446 Warning: validateDOMNesting(...): <tr> cannot appear as a child of <div>.

index.js:1446 Warning: validateDOMNesting(...): <form> cannot appear as a child of <tbody>.
index.js:1446警告:validateDOMNesting(…):不能显示为的子级。
index.js:1446警告:validateDOMNesting(…):不能显示为的子级。
这是我的代码:


身份证件
颜色
大小
制造日期
量
到期日
产品
行动
{this.state.productName}
{this.state.products.map(选项=>(
{option.name}
))}
{this.getBtn()}

这不是语义HTML。
tbody
唯一允许的元素是
tr
。HTML有一套严格的规则,与哪些标记可以出现在哪里有关。许多浏览器不强制执行这些规则,但您的IDE将强制执行这些规则

无论如何,使用表格来布局表单并不是一个好主意。如果您使用表格来创建布局,它不会始终随屏幕正确调整大小。您可以将divs与css flexbox一起使用,而不是使用表

div允许流内容,因此可以将表单放入div中,而表单也允许流内容,因此可以将div放入表单中


Flexbox提供了良好的跨浏览器支持,使创建响应性网格布局相对容易

@MajutharanMajutharan表单不允许作为表的子元素,tbody或tr。现在我很清楚@Leon的意思,但我需要创建一个智能表来添加、编辑和删除表单,然后我要验证这些字段。我能做什么?请不要将w3schools链接为资源。了解更多