.closest()不突出显示单元格

时间:2015-05-18 10:15:05

标签: jquery html

目的是在页面加载时突出显示所选单选按钮的单元格。

我有以下代码:

JS Fiddle

HTML

<table style='border: 1px solid black;'>
    <tr>
        <td class="tg-031e eq q1" >
            <input class="hidden" name="q1" value="c" id="q1c" type="radio" checked="" onclick="mand();">
            c
        </td>
    </tr>
</table>

的jQuery

if ($('#q1c').prop('checked')) { 
    alert('checked');
    $(this).closest("td").addClass("selected");
}

但是,单元格未突出显示。

1 个答案:

答案 0 :(得分:4)

使用{}语句创建新块(if)不会更改上下文(this引用的值),因此在if块中引用#q1c您需要使用$('#q1c'),而不是this(假设您要定位包含td元素的#q1c

if ($('#q1c').prop('checked')) {
    alert('checked');
    $('#q1c').closest("td").addClass("selected");
}

演示:Fiddle