使用jquery逐行获取表格单元格值

Bid*_*yut 6 jquery

我有一张这样的桌子

<table class="wp-list-table widefat fixed posts">
        <tbody id="c_b">
    <tr>
        <td><b>Title</b></td>
        <td><b>Upcharge</b></td>
        <td><b>Profit Percentage</b></td>
        <td><b>Short Description</b></td>
    </tr>
    <tr>
        <td colspan="4"><input type="checkbox" id="selectall"> Bulk <u>Check/Uncheck</u></td>
    </tr>
    <tr>
        <td id="title_1"><input type="checkbox" id="product_1" value="123123_1" class="case"> 123123<br></td>
        <td id="upcharge_1">24</td>
        <td id="percentage_1">15</td>
        <td id="sdescription_1">This is a short</td>
    </tr>
    <tr>
        <td id="title_2"><input type="checkbox" id="product_2" value="A33232_2" class="case"> A33232<br></td>
        <td id="upcharge_2">24</td>
        <td id="percentage_2">15</td>
        <td id="sdescription_2">This is a short</td>
    </tr>
    <tr>
        <td id="title_22"><input type="checkbox" id="product_3" value="BEY-049_22" class="case"> Plane Shirt<br></td>
        <td id="upcharge_22">24</td>
        <td id="percentage_22">15</td>
        <td id="sdescription_22">SD for Plane shirt</td>
    </tr>
    <tr>
        <td id="title_23"><input type="checkbox" id="product_4" value="IRCTC_23" class="case"> Rail Neer<br></td>
        <td id="upcharge_23">24</td>
        <td id="percentage_23">15</td>
        <td id="sdescription_23">Rail neer short description</td>
    </tr>
    <input type="hidden" value="47474" id="licence_no" name="licence_no"><input type="hidden" value="47474" id="licence_no" name="licence_no">
    <input type="hidden" value="47474" id="licence_no" name="licence_no"><input type="hidden" value="47474" id="licence_no" name="licence_no">      
    </tbody>
    </table>
Run Code Online (Sandbox Code Playgroud)

我希望逐行将单元格值作为数组,为此我编写如下代码

$("tbody>tr").each(function(){
        var rowvalue = [];
        $("tbody>tr>td").each(function(){
            //alert($(this).text());
            rowvalue.push($(this).text());
        });
        alert(rowvalue);

    });
Run Code Online (Sandbox Code Playgroud)

在这里,我一次检查所有值,它提醒n次(n =行数),但我想要n行数值的数组.我怎样才能获得这些价值.

und*_*ned 1

您应该在每个函数的范围之外初始化数组。在每次迭代中,您都会清除先前迭代的数据。可以用map方法。

var rowvalue = [];
$("tbody > tr").each(function(i, v) {
    rowvalue[i] = $('td', this).map(function() {
        return $(this).text()
    }).get()
});

console.log(rowvalue);
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/ydZBN/