2010-08-16 216 views
0

我在頁面上有以下標記。我想在此之後追加兩個表格行。將表格行添加到另一個表格行

<tr><td width="48%" align="right" nowrap=""><b>Type it again:</b></td><td width="52%"> <input type="password" autocomplete="off" maxlength="20" size="20" name="passwordagain"><!-- value="" --></td></tr> 

這裏有兩個我要追加到第一個上面

<tr><td width="48%" align="right" nowrap="nowrap"><b>First Name:</b></td><td width="52%"> <input maxlength="35" value="" size="30" name="BillingFirstName"></td></tr> 
<tr><td width="48%" align="right" nowrap="nowrap"><b>Last Name:</b></td><td width="52%"> <input name="BillingLastName" size="30" value="" maxlength="35"></td></tr> 

回答

1

假設你確切地知道這兩個新行應該是什麼,這裏有一個快速和骯髒的方式:

$('tr:has(:input[name=passwordagain])') // row in question: no ID to use? 
    .after('<tr><td>...First Name...</td></tr>') // to add 
    .next()          // don't reverse order 
    .after('<tr><td>...Last Name...</td></tr>'); // next to add 

你可以省略next()和簡單地把.after() S IN相反的順序,或把它們粘相同的字符串或任何數量的其他變體。

根據您的評論,here's a Fiddle應明確發生了什麼。

+0

我不明白......名字...... – user357034 2010-08-16 04:29:36

+0

這是爲了簡寫 - 意思是「所有其他的'名字'行中的東西都在這裏」。你想要插入的''的整個內容都放在'.after()'調用中,並且將被jQuery立即插入到「passwordagain」行之後。我曾兩次展示「名」;第二個意思是「姓」。修正了。 – 2010-08-16 04:43:03

+0

@user,在我的答案中查看上面引用的jsFiddle。它顯示一個工作解決方案。 – 2010-08-16 04:51:50

0

這應該工作:

$('table').append('<tr>row 1</tr><tr>row 2</tr>'); 

其中table是父表。如果您在表格中使用tbody,則可能需要使用tbody

相關問題