首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML:是否可以在每个表格行中以XHTML有效的方式拥有一个表单标记?

HTML:是否可以在每个表格行中以XHTML有效的方式拥有一个表单标记?
EN

Stack Overflow用户
提问于 2009-08-09 03:22:33
回答 8查看 116.7K关注 0票数 82

我最好的描述如下:

我想要这个(整个表在editmode中,保存按钮在每一行)。

代码语言:javascript
复制
<table>
    <tr>
        <td>Id</td>
        <td>Name</td>
        <td>Description</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td><input type="hidden" name="id" value="1" /></td>
        <td><input type="text" name="name" value="Name" /></td>
        <td><input type="text" name="description" value="Description" /></td>
        <td><input type="submit" value="Save" /></td>
    </tr>
    <tr>
        <td><input type="hidden" name="id" value="2" /></td>
        <td><input type="text" name="name" value="Name2" /></td>
        <td><input type="text" name="description" value="Description2" /></td>
        <td><input type="submit" value="Save" /></td>
    </tr>
    <!-- and more rows here ... -->
</table>

我应该把<form>标签放在哪里?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-08-08 19:35:31

您不能这样做。您唯一的选择是将此表划分为多个表,并将表单标记放在表的外部。您可能最终会嵌套您的表,但不建议这样做:

代码语言:javascript
复制
<table>
  <tr><td><form>
    <table><tr><td>id</td><td>name</td>...</tr></table>
  </form></td></tr>
</table>

我会完全删除这些表,并将其替换为带有样式的html元素,如div和span。

票数 41
EN

Stack Overflow用户

发布于 2014-07-20 19:06:47

值得一提的是,这在HTML5中是可能的,使用输入元素的"form“属性:

代码语言:javascript
复制
<table>
    <tr>
        <td>Id</td>
        <td>Name</td>
        <td>Description</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td><form id="form1"><input type="hidden" name="id" value="1" /></form></td>
        <td><input form="form1" type="text" name="name" value="Name" /></td>
        <td><input form="form1" type="text" name="description" value="Description" /></td>
        <td><input form="form1" type="submit" value="Save" /></td>
    </tr>
    <tr>
        <td><form id="form2"><input type="hidden" name="id" value="1" /></form></td>
        <td><input form="form2" type="text" name="name" value="Name" /></td>
        <td><input form="form2" type="text" name="description" value="Description" /></td>
        <td><input form="form2" type="submit" value="Save" /></td>
    </tr>
</table>

虽然在缺少JS和使用原始元素方面很干净,但不幸的是这在IE10中不起作用。

票数 111
EN

Stack Overflow用户

发布于 2013-06-05 21:54:27

我有一个类似的问题,this answer有问题,HTML: table of forms?为我解决了这个问题。(不确定它是否是XHTML,但它可以在HTML5浏览器中工作。)

您可以使用css为其他元素提供表格布局。

代码语言:javascript
复制
.table { display: table; } 
.table>* { display: table-row; }
.table>*>* { display: table-cell; }

然后使用以下有效的html。

代码语言:javascript
复制
<div class="table"> 
    <form>
        <div>snake<input type="hidden" name="cartitem" value="55"></div>
        <div><input name="count" value="4" /></div>
    </form>
</div>
票数 70
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1249688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档