我有一个HTML代码,如下所示:
< tr id="500" > < form id="500" onsubmit="DoThis()"> < td>Info< /td> etc... etc... < td>Info< /td> < /form> < /tr>
我在Javascript中尝试做的是制作元素的副本并将其添加到父表:
var TrElement = document.getElementById("500")
var parent = TrElement.parent; var NewTr = TrElement.cloneNode(true); parent.appendChild(NewTr);
这段代码创建了一个完美的新副本.问题是我无法提交任何内容,因为新元素已关闭其形式:它现在看起来像这样:
< tr id="500"> < form id="500" onsubmit="DoThis()" /> <----- end tag on the form :/ < td>Info< /td> etc... etc... < td>Info< /td> < /tr>
有谁知道我怎么能强迫表格不要关闭,或者有另一个解决方案来解决这个问题?
谢谢...
我认为您遇到问题是因为您的HTML无效.表单不能是表行的子元素,它必须位于表元素内.此外,您不能为行和表单本身提供相同的id值.所有元素ID必须是唯一的,并以字母开头.
由于我不确定你要做什么,很难知道解决它的建议.您可以尝试在不使用表的情况下进行新布局 - 除非您有表格数据,这可能是要走的路.否则,您可以尝试将表单嵌套在表元素中,然后在此表单中包含一个实际包含柱状数据的表,尽管您可能必须将此列的宽度修改为单个数据表.
就id冲突而言,您可能希望在id之前添加类似"row_"或"form_"的字符串以区分它们.
如果您可以提供有关您要完成的内容的更多信息,我可以改进此答案.