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

我有以下代码:

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");
}


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

最佳答案

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

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


演示:Fiddle

关于jquery - .closest()不突出显示单元格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30300516/

10-10 23:24