Reputation: 7533
Is it valid to have a form tag inside a table tag? Some documentation links would be appreciated.
Upvotes: 5
Views: 13322
Reputation: 635
It is valid to put a <form>
tag inside a <table>
tag.
<table>
<tr>
<td>
<form name="sample" action="test.php">
<div>
<input type="submit" value="submit" >
</div>
</form>
</td>
</tr>
</table>
Editing note: tags wrapped as code so that the content reads as intended, but the answer should specify that while the form is inside the table, it cannot be a direct descendant: it must be a child of a cell.
Upvotes: 0
Reputation: 1
<form action="#">
<table>
<thead>
<tr>
<th>list</th>
<th>button</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="text" required="required"></td>
<td><button type="submit" id="saveRow">Save me</button></td>
</tr>
</tbody>
</table>
</form>
Upvotes: 0
Reputation: 700262
Putting a form
tag inside a table
(but outside the rows) was sometimes used to keep the margins of the form to interfere with the layout. It kind of works, but it's invalid code according to the HTML standard.
Use CSS to remove the margin from the form
tag instead. Example:
<form ... style="margin:0">
Or preferrably put it in your style sheet.
Upvotes: 2
Reputation: 344547
<form>
is valid inside a <td>
element. You can check this sort of thing at http://validator.w3.org. Choose "Validate by direct input", then paste the following HTML:
<table>
<tbody>
<tr>
<td><form action="test"><div><input type="text"></div></form></td>
</tr>
</tbody>
</table>
Under "More options", select "Validate document fragment". This allows you to check a HTML snippet without writing an entire page for it. I use it for checking HTML fragments all the time.
Upvotes: 14
Reputation: 18598
You can nest a form within a td, its usually fine for most purposes though to wrap a form around a table
Upvotes: 0