jQuery选择器问题

时间:2010-06-22 08:20:37

标签: jquery jquery-selectors

我遇到了JQuery中的选择器问题。我有以下html结构....

<table>
 <tr>
   <td rowspan="3"></td>
   <td></td>
   <td></td>
   <td rowspan="3"></td>
 </tr>
 <tr>
   <td></td>
   <td></td>
 </tr>
 <tr>
   <td rowspan="4"></td>
   <td></td>
   <td></td>
   <td rowspan="4"></td>
 </tr>
 <tr>
   <td></td>
   <td></td>
 </tr>
 ....
</table>

我想在具有属性rowspan的tr中选择第一个td。如何使用JQuery选择器选择它。

类似$(“table&gt; tr&gt; td [rowspan]”)选择所有具有rowspan属性的td。

此致

2 个答案:

答案 0 :(得分:4)

<table>具有隐式<tbody>,这就是您的选择器不起作用的原因。尝试:

$("table td[rowspan]")

现在,每个<td>中的第一个<tr>将是:

$("table tr").find("td[rowspan]:first")

工作示例(非常混乱,但这是你的表):http://jsbin.com/aqere/2

答案 1 :(得分:2)

请参阅first-child

$("table td[rowspan]:first-child")

正如@kobi所说,浏览器注入了一个隐含的tbody元素。要非常具体,请使用:

$("table > tbody > tr > td[rowspan]:first-child")