我的选择器jQuery('.pa_availability-pin table tbody tr').children('td').eq(1);
返回<td>
个对象
现在我想选择所选<input>
<td>
元素
如何在一个声明中这样做?
答案 0 :(得分:2)
只需将它们全部组合成1个选择器:
jQuery('.pa_availability-pin table tbody tr td:eq(1) input');
或使用.find()
jQuery('.pa_availability-pin table tbody tr').children('td').eq(1).find('input');
答案 1 :(得分:2)
jQuery('.pa_availability-pin table tbody tr > td:eq(1) > input');
但是,我们可以稍微优化一下。 table tbody tr td
是多余的,因为中的每个元素必须包含在另一个元素中。您可以安全地将其减少到td
:
jQuery('.pa_availability-pin td:eq(1) > input'); // zero-based
>
指定直接孩子,这就是你想要的。
此外,:eq
isn't a CSS selector,所以要优化您的选择器使用:nth-child
代替:
jQuery('.pa_availability-pin td:nth-child(2) > input'); // not zero-based
如果input
周围有另一个元素(例如标签),只需从选择器中删除>
。