Php 使用<;输入>;直接在内部标记<;表>;

Php 使用<;输入>;直接在内部标记<;表>;,php,html,xhtml,Php,Html,Xhtml,我正在生成一个包含多个可编辑行的表。像员工一样,每行都有一个,这样您可以同时更改多个姓名。我有一些隐藏字段在里面,也需要和表行循环 问题是在表标记中包含输入是无效的xhtml。我不想将它们包装在标记中,因为这显然会为不需要的隐藏字段创建一个新列 有人知道我是否可以将它们包装到其他内容中以使其成为有效的xhtml吗?您可以将隐藏的放在现有单元格中。它们是隐藏的,您可以将它们放在任何可见输入旁边,这样就可以了 <tr> <td><input type="text"

我正在生成一个包含多个可编辑行的表。像员工一样,每行都有一个,这样您可以同时更改多个姓名。我有一些隐藏字段在里面,也需要和表行循环

问题是在表标记中包含输入是无效的xhtml。我不想将它们包装在
标记中,因为这显然会为不需要的隐藏字段创建一个新列


有人知道我是否可以将它们包装到其他内容中以使其成为有效的xhtml吗?

您可以将隐藏的
放在现有单元格中。

它们是隐藏的,您可以将它们放在任何可见输入旁边,这样就可以了

<tr>
  <td><input type="text" name="fname" /></td>
  <td><input type="text" name="lname" />
      <input type="hidden" name="cid" value="11" />
      <input type="hidden" name="uid" value="12" />
  </td>
</tr>

将隐藏的输入标记放在最后一列有什么不对

...
<td>
  <input type="text" name="yourname" />
  <input type="hidden" name="thisrowuniqueid" value="123" />
</td>
...
。。。
...

我不能100%确定这是否有效,但您可以尝试将包含的行和列设置为visibility hidden

tr.hidden, td.hidden {
    visibility: hidden;
}

值得一试。

这是完全有效的XHTML严格代码。可以在表标记中添加输入字段

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Dicabrio.com</title> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 

</head> 
<body>
<form id="test" method="post" action="test.php">
<fieldset>
<legend>test</legend>
<table>
    <tr><td>
    <label>test</label><input type="text" name="test" value="" />
</td></tr>
</table>
</fieldset>
</form>
</body> 
</html>

迪卡布里奥网站
测试
测试

是的,我也想到了这一点。我不喜欢tho方法,因为它破坏了我的格式。可能不是其他干净的方法,所以我现在就用这个。这会如何破坏你的格式?隐藏的
元素应该不会对任何其他内容产生影响。当然不是输出,而是源代码。(很可能我关心的是琐碎的事情)可见性隐藏只会使元素不可见,但保持它们所占据的空间。。所以这看起来很“奇怪”。显示:无;我相信问题是他们想把标签放在声明之后,而不是包装在行/列中。类似于。。。如果你绝对坚持文档验证,我会把隐藏的输入放在一个隐藏的行中,然后处理它。