获取表行数据jQuery

时间:2013-11-29 08:31:58

标签: jquery

只想获取表格行数据并传递它。在我的代码中,它似乎只获得第一行数据。

jsfiddle

$(".edit").click(function(){
    var tableData = $('tr.table').children("td").map(function() {
        return $(this).text();
    }).get();

  $('#test1').val($.trim(tableData[0]));
  $('#test2').val($.trim(tableData[1]));
  $('#test3').val($.trim(tableData[2]));
})

2 个答案:

答案 0 :(得分:1)

尝试

fiddle Demo

var tableData = $(this).closest('tr.table').children("td").map(function () {
    return $(this).text();
}).get();

<小时/> 变化

$('tr.table').children("td") 

//will get all tr.table and it's children td

$(this).closest('tr.table').children("td") 

//this will get closest tr to the current edit button

<小时/> .closest()

答案 1 :(得分:1)

$(".edit").click(function(){
    var tableData = $(this).closest("tr").children("td").map(function() {
     // by $(this) go to current td then by closest go its closest "tr" then find their td        
        return $(this).text();
    }).get();

  $('#test1').val($.trim(tableData[0]));
  $('#test2').val($.trim(tableData[1]));
  $('#test3').val($.trim(tableData[2]));
});

<强> update fiddle

参考 closest()