单击 table 行时突出显示 table 行和 select 单选输入 jquery
Highlight table row and select radio input when table row clicked jquery
我正在努力实现与此类似的目标:
我想 select 一个无线电输入并在有人点击 table 中的某处时突出显示 table 行。同样的想法是这个但是有无线电输入
http://jsfiddle.net/FbHAV/2/
我能得到一些帮助吗?我应该在 Jquery 中更改什么?
HTML :
<table class="record_table">
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
Jquery :
$(document).ready(function () {
$('.record_table tr').click(function (event) {
if (event.target.type !== 'radio') {
$(':radio', this).trigger('click');
}
});
$("input[type='radio']").change(function (e) {
if ($(this).is(":checked")) {
$(this).closest('tr').addClass("highlight_row");
} else {
$(this).closest('tr').removeClass("highlight_row");
}
});
});
我认为主要问题是您忘记了对单选按钮进行分组,即
<input type="radio" name="test" />
然后这将在单击单选按钮和 <tr>
时都起作用:
$(document).ready(function () {
$('.record_table tr').click(function (event) {
if (event.target.type !== 'radio') {
$(':radio', this).trigger('click');
}
});
$("input[type='radio']").change(function (e) {
e.stopPropagation();
$('.record_table tr').removeClass("highlight_row");
if ($(this).is(":checked")) {
$(this).closest('tr').addClass("highlight_row");
}
});
});
分叉 fiddle -> http://jsfiddle.net/48o1kycu/
我正在努力实现与此类似的目标: 我想 select 一个无线电输入并在有人点击 table 中的某处时突出显示 table 行。同样的想法是这个但是有无线电输入 http://jsfiddle.net/FbHAV/2/
我能得到一些帮助吗?我应该在 Jquery 中更改什么?
HTML :
<table class="record_table">
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
<tr>
<td>
<input type="radio" />
</td>
<td>Hello</td>
<td>Hello</td>
</tr>
Jquery :
$(document).ready(function () {
$('.record_table tr').click(function (event) {
if (event.target.type !== 'radio') {
$(':radio', this).trigger('click');
}
});
$("input[type='radio']").change(function (e) {
if ($(this).is(":checked")) {
$(this).closest('tr').addClass("highlight_row");
} else {
$(this).closest('tr').removeClass("highlight_row");
}
});
});
我认为主要问题是您忘记了对单选按钮进行分组,即
<input type="radio" name="test" />
然后这将在单击单选按钮和 <tr>
时都起作用:
$(document).ready(function () {
$('.record_table tr').click(function (event) {
if (event.target.type !== 'radio') {
$(':radio', this).trigger('click');
}
});
$("input[type='radio']").change(function (e) {
e.stopPropagation();
$('.record_table tr').removeClass("highlight_row");
if ($(this).is(":checked")) {
$(this).closest('tr').addClass("highlight_row");
}
});
});
分叉 fiddle -> http://jsfiddle.net/48o1kycu/