使用一些非常基本的jQuery遇到一个小问题,我希望能够点击一个表格单元格,然后让它自动选择里面的单选按钮。
HTML:
<table>
<tr>
<td>
1<br>
<input type="radio" name="choice" value="1">
</td>
<td>
2<br>
<input type="radio" name="choice" value="2">
</td>
<td>
3<br>
<input type="radio" name="choice" value="3">
</td>
</tr>
</table>
jQuery的:
$("td").click(function () {
$(this).closest('input:radio').attr('checked',true);
});
非常感谢任何帮助,谢谢!
答案 0 :(得分:13)
使用此选择器:
$('input:radio', this).attr('checked', true);
或使用find
方法:
$(this).find('input:radio').attr('checked', true);
以下是您的代码的外观:
$("td").click(function () {
$(this).find('input:radio').attr('checked', true);
});
答案 1 :(得分:2)
尝试
$(this).find('input:radio').attr('checked','checked');
答案 2 :(得分:2)
尝试查找而不是最接近。
$(this).find('input:radio').attr('checked',true);
答案 3 :(得分:0)
这很好用
$(function () {
$('td').click(function () {
var cell = $(this),
state = cell.data('state') || 'first';
switch (state) {
case 'first':
cell.data('state', 'second');
cell.find('input:radio').attr('checked', true);
cell.find('input:radio').data('checked', true);
cell.find('input:radio').prop('checked', true);
break;
case 'second':
cell.data('state', 'first');
cell.find('input:radio').attr('checked', false);
cell.find('input:radio').data('checked', false);
cell.find('input:radio').prop('checked', false);
break;
default:
break;
}
});
});