我有一个表(下方),其中包含与复选框关联的值。
<table id="testTable">
<tbody>
<tr id="tr1">
<td><input type="checkbox" value="value1"></td>
<td>row 1</td>
<td>A</td>
</tr>
<tr id="tr2">
<td><input type="checkbox" value="value2" ></td>
<td>row 2</td>
<td>B</td>
</tr>
<tr id="tr3">
<td><input type="checkbox" value="value3"></td>
<td>row 3</td>
<td>C</td>
</tr>
</tbody>
一旦用户选择了任意复选框组合,我需要确定与已选中的任何复选框相关联的值(在用户点击“完成”按钮后)。
这是我到目前为止所拥有的
$('#Finished').click(function() {
$('#testTable tr').filter(':has(:checkbox:checked)').each(function() {
$tr = $(this);
$('td', $tr).each(function() {
// NEED THIS BIT
});
});
});
我很难获得用户选中的复选框的值。
答案 0 :(得分:2)
只需选中所选复选框并收集值:
var values = [];
$("input[type='checkbox']:checked").each(function () {
values.push({"val": $(this).val(), "tr": $(this).closest("tr").attr("id")});
});
这将生成如下数组:
[
{
"val": "value1",
"tr": "tr1"
},
...
]
...仅包含已选中的复选框。
答案 1 :(得分:1)
判断选中哪一个的简单方法是向<input>
元素添加ID:
<tr id="tr1">
<td><input id="cb1" type="checkbox" value="value1"></td>
<td>row 1</td>
<td>A</td>
</tr>