Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在表中添加我想要的td? 这是一辆汽车 半托盘 4满托盘 4满托盘_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何在表中添加我想要的td? 这是一辆汽车 半托盘 4满托盘 4满托盘

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>

看一看,假设我想为第一个tr.th添加tr,然后我想在最后一个tr上设置它们,然后在第一个tr.th上设置它们,但是我怎么做呢

如果它们在表中是多个tr.th,那么在我的例子中,我需要设置tr from last from second tr.th

你能告诉我怎么做吗

谢谢

您可以这样做(我希望您希望在表的末尾添加一个新的
:如果最后一个
具有类
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?
}