在列中删除具有html5数据属性的表行

时间:2012-12-10 00:50:17

标签: jquery

我的表格的每一行都有一个按钮。该按钮使用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(数据属性)用于其他事情,所以尽管使用它来识别表行但它是列的一部分会很好。但是我不确定在这里使用哪个选择器来识别相应列的表行?

它不一定是这样,但我认为这将是干净的。

1 个答案:

答案 0 :(得分: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();
        }
    });
});