2010-09-16 75 views
2

我有一个表(标准标记)与每行无线电选择。一旦收音机被选中,我想强调一下。听起来很直白,但我无法触发它。jQuery突出显示表单行上的无线电选择

这里的标记:

表行:

<tr>
<td>some data</td>
<td>some data</td>
<td>some data</td>
<td>
<label class="label_radio"><input type="radio" name="ame" value="val" /></label>
</td>
</tr>

这是JS的相关部分: (MODS的sexify的单选按钮,该位工作标签时,位不):

$('.label_radio input:checked').each(function(){ 
$(this).parent('label').addClass('r_on'); 
$(this).parent('tr').addClass('.hilite'); //this line doesn't work 
}); 

任何想法?如果我没有给予足够的英特尔,请说,我会为你提供你所需要的。

提前不胜感激:)

回答

5

电台的母公司是不实际的表行,它的标签。使用.closest方法来查找母链,直到您到达TR

$(this).closest('tr').addClass('hilite'); 
+0

比我的清洁,更快。在upvotes寿,对不起:) – 2010-09-16 15:48:09

+0

注意:我刚刚编辑我的答案,因为原作者正在做.addClass('。hilite'),而不是.addClass('hilite')。我相当怀疑他打算这么做。 – BBonifield 2010-09-16 15:52:38

+0

我清楚地拥有那些日子之一!是的,你是对的。我在'.hilite'中的错误,我已经纠正了这个错误。非常感谢 - 我无法相信在寻求帮助之前我没有看到“父母”的问题。 – Tim 2010-09-16 16:00:57

0

不是最干净的方式,但如果您使用$(this).parent().parent().addClass('.hilite');