使用jquery获取特定行的匹配td值的下一行td值

时间:2014-05-22 07:28:53

标签: jquery

我是这样的......

<tr><td>1</td><td>6676</td></tr>
<tr><td>2</td><td>6582</td></tr>
<tr><td>33</td><td>6676</td></tr>
<tr><td>5</td><td>6614</td></tr>
<tr><td>95</td><td>6676</td></tr>
<tr><td>6</td><td>6619</td></tr>

当我点击某一行时,说第3行,我会弹出详细信息。在弹出窗口中,我可以导航到我们在gmail中的前一条记录和下一条记录。

我将使用find("td:eq(1)").text()

获得第二个td

现在说我在模态窗口中有第二个记录细节,当我通过捕获td值并匹配它来做它时,它不起作用。我不应该使用任何计数器。我只是将表中的所有记录保存在一个数组中并获取。 这里说currentMysqlId = 6676我点击第3行。我需要明智地排除它

var totalCount = parseInt(totalMsgs); //总行数。

        for(var i = parseInt(divcurrentCount)+1; i <= parseInt(divcurrentCount)+10; i++){ 
            $('#tblInbox tbody tr:nth-child('+i+')').addClass('active'); // Add class to new page rows.
        }

        //displayActiveRows(); // Display active rows.
        var nextCount = (parseInt($("#currentRecord").val())+1);
        if(nextCount == parseInt(totalCount)) {
            $('#next').hide();              
        }
        $('#prev').show();
        // Fetch next mysqlContent ID because with that ID, the next record details will be fetched.
        var currentMysqlId = $("#currentMysqlId").val();


        //var nextMySqlId = $('#tblInbox tbody tr td:contains('+currentMysqlId+')').parent("tr").next("tr").find("td:eq(6)").text();
        var nextMySqlId = $('#tblInbox tbody tr td:contains('+currentMysqlId+')').parent().next().find("td:eq(6)").text();
        alert("next id::"+nextMySqlId);


        $('#divcurrentCount').html(nextCount);
        renderPopUpData(arrMsgs[nextMySqlId],0); // Display the appropriate data.

我得到了愚蠢的答案,因为如果我在表中搜索6676,它有很多行。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您需要td:eq(1)而不是td:eq(6)。还要获取点击的dom引用,您需要使用$(this)

$(this).parent().next().find("td:eq(1)").text();