用jquery怎么获取表格中的一行内容

比如这表格中我勾选的一个单选框后如何获取被勾选这行前面的日期、标题、附件表格内容

一般都会在后台获得,比如这个表格的数据是用$list这个变量存储的,$list中每个元素都有id date title file四个字段,checkbox的name是id,现在写一个js方法用来将选中的复选框传到后台,需要使用一个按钮触发下面的方法
function fun(){
var arr = new Array();

$(":checked").each(function(){
arr[] = $(this).attr("name");
});

//然后用任意方法将arr传到后台

}
在后台根据传回来的id在$list中获得要你想要的数据。
上面是我觉得最简单的方法。
下面还有一个在页面里获得你要的数据的方法
将每一行数据都写在同一个div里,根据复选框的标示获得对应div内的数据
<div name=“id”>数据, (最后一列)<input type="checkbox" name="id" /></div>
<script>
function fun(){
var arr = new Array();

var name = '';

$(":checked").each(function(){
name = $(this).attr("name");
arr[] = $("div[name=" + name + "]").html();
});
}
</script>
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-06-15
//既然是复选框,就应该获取所有选择行的数据吧:代码如下:
var data = $(':checkbox:checked').map(function(){
    return $(this).parent().prevAll().map(function(i,v){return $(v).text();}).get().join(',')
}).get().join(',');
//如果只想获取一行,可以这样:
$(':checkbox:checked:first').parent().prevAll().map(function(i,v){return $(v).text();}).get().join(',')
//or
$(':checkbox:checked:last').parent().prevAll().map(function(i,v){return $(v).text();}).get().join(',')
//or
$(':checkbox:checked:eq(0)').parent().prevAll().map(function(i,v){return $(v).text();}).get().join(',')

追问

我是想取日期、标题等内容添加到别的div里的,这怎么弄?

追答

没代码,我没办法写。把页面代码贴出来

追问

代码已私信

追答<div id="result"></div>
<script>
function chooseOne(o){
if($(o).prop('checked')){
var html = $(o).closest('td').prevAll().map(function(){return this.innerHTML;}).get().reverse().join(',');
$('#result').html(html);
$('#uncheck :checkbox').attr('checked',false);
$(o).attr('checked',true);
}else{
$('#result').html('');
}
}
</script>

本回答被提问者采纳
第2个回答  2015-02-04
假定你的表格时table
$("table tr") 得到所有行 然后循环行 find("checkbox")找到单选框 判断其状态 就知道选中行了