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"]

4

3 に答える 3

3

次のようなことができます。

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(","));
});

フィドル

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

于 2013-10-04T08:45:34.470 に答える
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 
});

フィドル

于 2013-10-04T08:46:25.790 に答える
0
$('#delete').on( "click", function( event ) {
   var obj = $(this).parent().parent();
   $(obj).each(function(){
   alert($(this).html()) ;
   });
});
于 2013-10-04T08:48:49.517 に答える