使用什么选择器

时间:2014-06-05 10:49:14

标签: jquery jquery-selectors

我有一张桌子,想要在jquery中找到a的第二个td

$('td a:eq(1)').text();

这只给了我第一个,但我需要a中的所有td我如何在不使用each()

的情况下获取它们

JsFiddle Example

2 个答案:

答案 0 :(得分:2)

这是您想要的http://jsfiddle.net/SS8Gt/

HTML:

<table>
    <tr>
        <td>
            <a href="#">1 Link 1_1</a>
            <a href="#">1 Link 1_2</a>
        </td>
        <td>
            <a href="#">1 Link 2_1</a>
            <a href="#">1 Link 2_2</a>
        </td>
        <td>
            <a href="#">1 Link 3_1</a>
            <a href="#">1 Link 3_2</a>
        </td>
    </tr>
    <tr>
        <td>
            <a href="#">2 Link 1_1</a>
            <a href="#">2 Link 1_2</a>
        </td>
        <td>
            <a href="#">2 Link 2_1</a>
            <a href="#">2 Link 2_2</a>
        </td>
        <td>
            <a href="#">2 Link 3_1</a>
            <a href="#">2 Link 3_2</a>
        </td>
    </tr>
</table>

JS

var a = $("table").find("td");
for(var i=0; i< a.length; i++)
{
    console.log(a.eq(i).find("a").eq(1).text());
}

答案 1 :(得分:1)

简易解决方案:使用:eq()代替:nth-child()。像这样:

$("td a:nth-child(1)").text();

这里是updated Fiddle