2011-07-15 298 views
8

將表格添加到表格行是一種有效的方法(如果有的話)?將表格添加到表格行

我有以下情況:

<table> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
</table> 

我如何添加一個表單元素,仍然有有效的HTML?

<table> 
    <form> 
    <tr> 
     <td><input type="text" name="q"></td> 
     <td><input type="text" name="a"></td> 
     <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
    </form> 
</table> 

是無效的(至少我認爲是)

回答

4

包裝你的表格形式的元素:

<form action="/" name="form1"> 
    <table>...</table> 
</form> 

但即使更好:如果可能的話建立表單不表。

+5

爲什麼我不想使用表格的表格數據? – PeeHaa

+0

在您的特定示例中,可以將表格封裝在表格中。另一方面,您可能會丟失信息,或者您的用戶可能會感到困惑,因爲如果他們一次輸入多行,這些數據將會丟失! –

+3

我已經設置了一個演示頁面來向您顯示您的問題:http://tableinsideform.heroku.com/ –

0

表和形式在HTML不同的概念。人們有時會把他們混淆在一起。概念上的混亂往往伴隨着混淆的標記。另一方面,表格和表格在某種意義上可以是「混合」的。具體而言,您可以將表放入表單中,反之亦然,這樣做通常很有用。但是你需要明白你在做什麼。

表格和表格可以嵌套。但是,如果將表單放入表格中,則每個表格必須完全包含在一個表格單元格中(實踐中一個TD元素)。從而形式都是完全獨立的。

AFAIK使用表格來格式化表格是有效的。

+0

不好意思搞砸了問題的格式。問題中的表格有哪些選項? – PeeHaa

+0

首先HTML是無效的,因爲你還沒有關閉標籤。它應該是這樣的: 你問在哪裏把

標籤或者你可以有multime 單元內的元素?你應該把標籤放在表格之外。 –

+0

@Igor - 它不是XHTML。斜槓不是必需的(並且在HTML 4中顯然是錯誤的) – Quentin

-1
<form action="/" name="form1"> 
<table> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
</table> 

    </form> 

<table> 
    <tr> 
     <td colspan="2"> <form action="/" name="form1"></td> 
    </tr> 
    <tr> 
    <td><input type="text" name="q"></td> 
    <td><input type="text" name="a"></td> 
    <td><input type="submit" name="submit" value="Submit"></td> 
    </tr> 
<tr><td colspan="2"> </form></td></tr> 

...... 

</table> 
+0

呵呵?什麼q和什麼會在請求? – PeeHaa

+0

你需要爲每一行添加一個新的? – AlexC

+0

是的,這就是我需要的 – PeeHaa