0

テーブルのすべての行にあるボタンがあります。そのボタンはhtml5データ属性を使用します。その属性はサーバーから取得されます。

<table>
<tr>
<td>...</td>
<td><button class="deletebutton" data-delete="<?php echo $result_cameras[$i]["camera_hash"]; ?>">Delete Camera</button></td>
</tr>
...
</table>

私はjqueryでその属性を使ってそれを処理しようとします:

jQuery(document).on("click", ".deletebutton", function() {
    var camerahash = jQuery(this).data("delete");
    jQuery.ajax({
       url: "index.php?option=com_cameras&task=deletecamera&camera_hash="+ camerahash +"&format=raw",
       success: function(){
            jQuery("selector here to identify tr of table using camerahash").remove();
        }
    });
});

私はcamerahashすでに他のもののために(データ属性)を持っているので、それが列の一部であっても、それを使用してテーブル行を識別するのは良いことです。しかし、対応する列のテーブル行を識別するためにここで使用するセレクターが本当にわかりませんか?

このようにする必要はありませんが、これはきれいだと思いました。

4

1 に答える 1

1

this変数( )に参照を格納し$this、それを使用closest()して、コールバックでそれが属するテーブル行を見つけることができます。

jQuery(document).on("click", ".deletebutton", function() {
    var camerahash = jQuery(this).data("delete");
    var $this = $(this);
    jQuery.ajax({
       url: "index.php?option=com_cameras&task=deletecamera&camera_hash="+ camerahash +"&format=raw",
       success: function(){
            $this.closest('tr').remove();
        }
    });
});
于 2012-12-10T00:52:23.517 に答える