使用jQuery基于第一个单元格文本将类/单元格添加到表中

时间:2013-03-20 15:21:38

标签: jquery

我有下表...

<table>
    <tbody>
         <tr class="trclass">
             <td class="tdclass">Test1</td>
             <td class="tdclass">Test2</td>
             <td class="tdclass">Test3</td>
         </tr>
         <tr class="trclass">
             <td class="tdclass">Test4</td>
             <td class="tdclass">Test5</td>
             <td class="tdclass">Test6</td>
         </tr>
    </tbody>
</table>

如何使用基于第一个单元格(test1和test4)的文本的类向中间的每一行(test2和test3)和(test5和test6)添加一个单元格?基本上看起来像这样......

<table>
    <tbody>
        <tr class="trclass">
            <td class="tdclass">Test1</td>
            <td class="tdclass">Test2</td>
            <td class="Test1">NewText</td>
            <td class="tdclass">Test3</td>
        </tr>
        <tr class="trclass">
            <td class="tdclass">Test4</td>
            <td class="tdclass">Test5</td>
            <td class="Test4">NewText</td>
            <td class="tdclass">Test6</td>
        </tr>
    </tbody>
</table>

我尝试过像

这样的事情
jQuery(".tdclass").after("<td>test</td>");

jQuery(".tdclass").append("<td>test</td>");

但我不确定如何循环并实现这种确切的情况。

2 个答案:

答案 0 :(得分:1)

你可以这样做:

$("tr.trclass").each(function() {
   var className = $(this).find("td:eq(1)").text();
   $(this).find("td:eq(1)").after("<td class=" + className + ">NewText</td>");
});

演示:http://jsfiddle.net/ECu36/

答案 1 :(得分:0)

我认为按css属性控制很容易,如下所示:

$('tr.trclass').find('td:nth-child(2)').after('<td>testing123</td>');