我有一个包含n行的html表。每行的第一列是单选按钮。我想实现以下功能:
当用户点击单选按钮(第一列)时,我希望将相应的行值作为数组。
谢谢
答案 0 :(得分:1)
我认为你需要这个......
$("#table_id tbody").on('click', 'tr td:first-child', function (e) {
var data = [];
$(this).parent('tr').find('td:not(:first)').map(function(index, val) {
data.push($(val).html());
}));
});
答案 1 :(得分:0)
例如 HTML代码:
<table id="data">
<tr>
<td><input name="check" type="radio" class="radiobtn" /></td>
<td>Data 1</td>
<td>Data 2</td>
<td>Data 2</td>
<td>Data 4</td>
</tr>
<tr>
<td><input name="check" type="radio" class="radiobtn" /></td>
<td>Data 5</td>
<td>Data 6</td>
<td>Data 7</td>
<td>Data 8</td>
</tr>
<tr>
<td><input name="check" type="radio" class="radiobtn" /></td>
<td>Data 9</td>
<td>Data 10</td>
<td>Data 11</td>
<td>Data 12</td>
</tr>
<tr>
<td><input name="check" type="radio" class="radiobtn" /></td>
<td>Data 13</td>
<td>Data 14</td>
<td>Data 15</td>
<td>Data 16</td>
</tr>
</table>
Javascript(jQuery):
$(document).ready(function(){
$(".radiobtn").click(function(){
var tds = $(this).closest('tr').children('td');
console.log(tds);
var dataArray =[];
for(i=1;i < tds.length;i++)
dataArray.push($(tds[i]).html());
//Use dataArray here
$("#console").html(JSON.stringify(dataArray));
});
});