我有一个包含文本数据的表,但是在一个单元格中我有一个复选框。我可以从td中提取数据,但我无法弄清楚如何提取复选框值
这是我尝试过的(见附图!)
$('#tableData tbody tr:eq('+row+')').find('td:eq(8)').eq(0).value
https://drive.google.com/file/d/0BxKM9sqBGY28cXp5ZzVCc0dRc28/view?usp=sharing
答案 0 :(得分:1)
您在查询中根本没有指定复选框。
尝试更改:
$('#tableData tbody tr:eq('+row+')').find('td:eq(8)').eq(0).value
要:
$('#tableData tbody tr:eq('+row+')').find('td:eq(8)').eq(0).find('checkbox').val();
答案 1 :(得分:0)
$('#tableData tbody tr:eq('+row+')').find('td:eq(8) input').is(':checked')
答案 2 :(得分:0)
你可以这样做:
$('#tableData tbody tr:eq('+row+') td:eq(8) input').val()
答案 3 :(得分:0)
您的目标是td
元素,而不是input
,不是吗?试试:
$('#tableData tbody tr:eq('+row+') td:eq(8) input').val()
答案 4 :(得分:0)
Checkbox有两种状态。检查并取消选中。
要获取值,请使用.prop('值') - 请在底部查看我的JSFiddle。 (我还更新了示例)
我希望您在控件上正确设置选中的值(从您的代码中不清楚您是否正在尝试将值设置为某些内容并期望看到已选中复选框或您正确设置"检查"属性。
<input type="checkbox" id="myCheckboxId" value="0" checked>
在jquery中使用选择器查找复选框。请搜索SO,因为有很多例子。循环使用&#34; row&#34;因为计数器不是最好的方法,所以在表上使用.each查找带有选中复选框的行。
即使你已经为控件添加了ID和ID(复选框):
var isChecked = $('#tableData tbody tr:eq('+row+')').find('myCheckboxId').is(':checked');
或者:
var isChecked = $('#tableData tbody tr:eq('+row+') input:checkbox').is(':checked');
var checkBoxValue = $('#tableData tbody tr:eq('+row+') input:checkbox').prop('value');
答案 5 :(得分:-1)
您可以查询复选框本身。 (更好的是,给复选框一个名称或ID以及查询。)
alert($('input[type=checkbox]').val());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table><tr><td><input type="checkbox" value="99"></td></tr></table>