如何获取动态加载的表上第一行的最后一个表格单元格值?

时间:2015-11-18 07:23:30

标签: jquery

我有一个动态构建和加载的表,这意味着该表是由document ready event上的代码生成的。

我需要获取第一行(不是标题)和页面加载时最后一个单元格的值(文档就绪)。

这是一个有效的例子:

<table id="example">
    <tr>
        <th>Firstname</th>
        <th>Lastname</th>
        <th>Points</th>
        <th hidden="hidden">Secret Code</th>
    </tr>
    <tbody>
    <tr>
        <td>Eve</td>
        <td>Jackson</td>
        <td>94</td>

        <!--Onload get this cell value-->
        <td hidden="hidden">1</td>
    </tr>

    <tr>
        <td>Robert</td>
        <td>Groves</td>
        <td>1000</td>
        <td hidden="hidden">2</td>
    </tr>

    <tr>
        <td>John</td>
        <td>Hamm</td>
        <td>XYZ</td>
        <td hidden="hidden">3</td>
    </tr>

    </tbody>
</table>

JS:

<script type="text/javascript">

    $(function(){

        alert($("#example tbody tr").eq(1).find('td:last').text());
    });

</script>

我无法在动态生成的表上使用它。 我只是得到一个空值。

3 个答案:

答案 0 :(得分:0)

试试这个:

$("#example tbody tr:first-child td:last-child" ).html();

答案 1 :(得分:0)

<script type="text/javascript">
    $(function(){
        console.log($("#example tbody tr:first").find('td:last').html());
    });
</script>

请使用“tr:first” - 它会找到第一行。然后找到最后一个单元格“td:last”。并通过“html()”从td获取值,而不是“text()”。

答案 2 :(得分:0)

在您提供的示例中,一切都很好,但我们正在处理隐藏的元素。我们必须先删除它们:

$('[hidden]').remove();

工作演示:http://jsbin.com/tebudi/edit?js,output