2013-10-04 53 views
0

我有下表并在一个按钮上单击我希望能够从第一个3 <td>获取内容并将它们放入数组中。我已经想到,我将能够使用父母和孩子一些,但我有问题得到最终结果。桌子下面是我到目前为止的代码。使用父项和子项从表中获取值

<tr> 
    <td>Content A</td> 
    <td>Content B</td> 
    <td>Content C</td> 
    <td> 
     <Button id="delete">Delete</Button> 
    </td> 
</tr> 

当前的Jquery/JavaScript的:

$('#delete').on("click", function(event) { 
    $(event.target).closest('tr').remove(); 
    var unit = $(event.target).parent().children().get(0); 
    alert(unit); //returns html element 
}); 

最终输出我想要的是["Content A","Content B","Content C"]

+0

这里的父'td',为什么你需要删除'tr'? – bhb

+0

为什么命名函数删除,如果你只是想获得值?你想删除列,然后获取数组中的值? –

+0

@SunnyRGupta我需要修改数据库中的值,因为用户已经删除了他们 – Nick

回答

2

数组可以做这样的事情:

JS

$('#delete').on("click", function (event) { 
    var _this = $(event.target); 
    var tds = $(_this).closest("tr").find("td:lt(3)"); 
    var outArray = []; 
    for(var x = 0; x < tds.length; x++){ 
     outArray.push($(tds[x]).text()); 
    } 
    alert(outArray.join(",")); 
}); 

FIDDLE

http://jsfiddle.net/uYR6A/1/

1

尝试

$('#delete').on("click", function(event) { 
    $(event.target).closest('tr').remove(); 
    var data = []; 
    $(event.target).parent().siblings("td").each(function() { 
     data.push($(this).html()) 
    }); 
    console.log(data); //returns html element 
}); 

Fiddle

0
$('#delete').on("click", function(event) { 
    var obj = $(this).parent().parent(); 
    $(obj).each(function(){ 
    alert($(this).html()) ; 
    }); 
}); 
相关问题