Javascript 如何在表中添加我想要的td? 这是一辆汽车 半托盘 4满托盘 4满托盘
看一看,假设我想为第一个tr.th添加tr,然后我想在最后一个tr上设置它们,然后在第一个tr.th上设置它们,但是我怎么做呢 如果它们在表中是多个tr.th,那么在我的例子中,我需要设置tr from last from second tr.th 你能告诉我怎么做吗 谢谢您可以这样做(我希望您希望在表的末尾添加一个新的Javascript 如何在表中添加我想要的td? 这是一辆汽车 半托盘 4满托盘 4满托盘,javascript,jquery,html,Javascript,Jquery,Html,看一看,假设我想为第一个tr.th添加tr,然后我想在最后一个tr上设置它们,然后在第一个tr.th上设置它们,但是我怎么做呢 如果它们在表中是多个tr.th,那么在我的例子中,我需要设置tr from last from second tr.th 你能告诉我怎么做吗 谢谢您可以这样做(我希望您希望在表的末尾添加一个新的:如果最后一个具有类th,您希望在之前添加新的: <tbody> <tr class="th"> <td>
:如果最后一个
具有类th
,您希望在
之前添加新的
:
<tbody>
<tr class="th">
<td>
this is a heead
</td>
<td>
</td>
</tr>
<tr>
<td>
Half Pallets
</td>
<td>4 Full Pallet
</td>
</tr>
<tr>
<td>
<td>4 Full Pallet
</td>
</tr>
</tbody>
//获取最后一个tr
var trLast=$('tr:last');
//创建要添加的tr
var trToAdd=$('');
//如果最后一个tr的类为th
if(trLast.hasClass('th')){
//在最后一个tr之前添加新tr
trLast.before(trToAdd);
}否则{
//在最后一个tr之后添加新tr
trLast.after(trToAdd);
}
假设您有类似的HTML:
//get the last tr
var trLast = $('tr:last');
//create a tr to add
var trToAdd = $('<tr>');
//if the last tr has the class th
if(trLast.hasClass('th'){
//add the new tr before the last
trLast.before(trToAdd);
}else{
//add the new tr after the last
trLast.after(trToAdd);
}
某个标题
一些数据
更多数据
另一个标题
一些数据
更多数据
然后我假设您希望生成的HTML如下所示:
<table>
<tbody>
<tr class="th">
<td>Some header</td>
</tr>
<tr>
<td>Some data</td>
</tr>
<tr>
<td>Some more data</td>
</tr>
<tr class="th">
<td>Another header</td>
</tr>
<tr>
<td>Some data</td>
</tr>
<tr>
<td>Some more data</td>
</tr>
</tbody>
</table>
某个标题
一些数据
更多数据
新行中的新数据位
另一个标题
一些数据
更多数据
在这种情况下,可以使用以下jQuery:
<table>
<tbody>
<tr class="th">
<td>Some header</td>
</tr>
<tr>
<td>Some data</td>
</tr>
<tr>
<td>Some more data</td>
</tr>
<tr>
<td>A new bit of data in a new row</td>
</tr>
<tr class="th">
<td>Another header</td>
</tr>
<tr>
<td>Some data</td>
</tr>
<tr>
<td>Some more data</td>
</tr>
</tbody>
</table>
var headerRows=$('tr.th');
如果(headerRows.length>1){
var headerRow=headerRows.get(1);
$(headerRow).before('新行中的新数据位');
}
else if(headerRows.length==1){
var headerRow=headerRows.get(0);
$(headerRow).closest('tbody').append('new bit of data in A new row');
}
否则{
//没有标题行-什么也不做?
}
或者,当单击具有类
th
的
元素时,在类th
的下一个
元素之前添加新行的小提琴:您的意思是要在tr.th
之前的表中添加一个新的tr
(如果存在)还是在表的末尾我的“读心术”能力完全按照你的解释来解决这个问题!:p汉克斯,假设我有两个tr.th,我想先添加它,然后它应该是从第二个tr.th算起的最后一个tr.th。因此,在第一个tr.th和第二个tr.th之间添加最后一个tr,以便为第一个tr.th添加tr。@user1197366你的意思是什么?如果你愿意,你可以更新你的问题
var headerRows = $('tr.th');
if(headerRows.length > 1) {
var headerRow = headerRows.get(1);
$(headerRow).before('<tr><td>A new bit of data in a new row</td></tr>');
}
else if(headerRows.length == 1) {
var headerRow = headerRows.get(0);
$(headerRow).closest('tbody').append('<tr><td>A new bit of data in a new row</td></tr>');
}
else {
// no header rows - do nothing?
}