jquery - 淡出并删除表格行

标签 jquery html html-table hide fadeout

我知道之前有人问过这个问题,但我遇到的问题似乎与之前解决的问题不同。我有一个表,我希望每一行都有一个删除链接,该链接使表行淡出,然后从 DOM 中删除表行。我的第一个问题是我无法让 jQuery fadeOut 效果在表格行上工作,并且发现您实际上必须在该行的 td 元素上调用 fadeOut。所以,这是我的 jJavascript:

$('span.deleteItem').live('click', function() {  
    $(this).closest('tr').find('td').fadeOut('fast', 
        function(){ 
            $(this).parents('tr:first').remove();                    
        });    

    return false;
});

span 元素位于 td 内,因此我在单击它时找到最近的 tr 元素,然后将 fadeOut 函数落在它的每个 td 元素上。这很好用。

问题在于,在回调函数中,“this”实际上引用的是 window 元素,而不是隐藏的单个 td 元素。根据我的理解,“this”应该引用淡出的元素。

有什么想法吗?

最佳答案

获取“this”引用并将其传递:

$('span.deleteItem').live('click', function() {  
    var here = this;
    $(this).closest('tr').find('td').fadeOut('fast', 
        function(here){ 
            $(here).parents('tr:first').remove();                    
        });    

    return false;
});

关于jquery - 淡出并删除表格行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7234399/

相关文章:

javascript - 没有指定宽度的表格的 CSS 固定标题

javascript - 删除表中不包含特定文本字符串的所有行

html - 内容与表格底部不对齐

Ruby on Rails 3 上的 jQuery 验证器插件?

javascript - 具有功能嵌套输入的 HTML 按钮

php - 滚动条出现在我的网站内

css - 奇怪的图像元素和 CSS 问题。

php - 如何根据等于多个值之一的字段从 MySQL 表中打印记录

c# - 反序列化 Web.API 参数时未调用自定义 Json.NET JsonConverter

jquery - 在 Jqgrid 中显示 Enum 描述而不是 Enum