Javascript 获取表格单元格';s HTML,然后从中删除某些元素

Javascript 获取表格单元格';s HTML,然后从中删除某些元素,javascript,jquery,fancybox,Javascript,Jquery,Fancybox,好吧,出于某种原因,我似乎无法得到我需要的东西。我很接近,但由于某种原因,我不能把最后一块拼图拼在一起 HTML: 这给了我TD中的一切,包括第一个锚和图像。我试过使用.remove()但不起作用,我也试过使用.not,但也不起作用 基本上,我需要做的是删除第一个标记和任何换行符(如)。然后将其指定给数据fancybox标题属性 感谢您的帮助。请使用.text而不是.html var title = $(this).parent().text(); 使用.text而不是.html var ti

好吧,出于某种原因,我似乎无法得到我需要的东西。我很接近,但由于某种原因,我不能把最后一块拼图拼在一起

HTML:

这给了我TD中的一切,包括第一个锚和图像。我试过使用.remove()但不起作用,我也试过使用.not,但也不起作用

基本上,我需要做的是删除第一个
标记和任何换行符(如

)。然后将其指定给数据fancybox标题属性


感谢您的帮助。

请使用
.text
而不是
.html

var title = $(this).parent().text();

使用
.text
而不是
.html

var title = $(this).parent().text();

克隆td,移除锚定标记,然后获取文本

$(function(){
  $('.fancy-gallery td').each(function(){
    var title = $(this).clone().find("a").remove().end().text();
    $(this).attr('data-fancybox-title', title);
    $(this).attr('data-fancybox-group', 'group-' + $(this).closest('.textarea').attr('id'));
  });
});

克隆td,移除锚定标记,然后获取文本

$(function(){
  $('.fancy-gallery td').each(function(){
    var title = $(this).clone().find("a").remove().end().text();
    $(this).attr('data-fancybox-title', title);
    $(this).attr('data-fancybox-group', 'group-' + $(this).closest('.textarea').attr('id'));
  });
});

我找到了答案。感谢@KevinB帮助我走上正确的道路。以下是那些希望这样做的人的答案:

$(function(){
    $('.fancy-gallery td').each(function(){
        var title = $(this).clone().find('a:has(img), br').remove().end().html();
        $(this).children('a').has('img').attr('data-fancybox-title', title).addClass($(this).attr('id'));
    });
});

我找到了答案。感谢@KevinB帮助我走上正确的道路。以下是那些希望这样做的人的答案:

$(function(){
    $('.fancy-gallery td').each(function(){
        var title = $(this).clone().find('a:has(img), br').remove().end().html();
        $(this).children('a').has('img').attr('data-fancybox-title', title).addClass($(this).attr('id'));
    });
});

为什么不直接执行
var title=$('.fancy gallery td').text()
?@KevinB,因为我需要保留一些用于锚定的html。我刚刚编辑了OP中的HTML,以反映文本中可能存在HTML。为什么不直接执行
var title=$('.fancy gallery td').text()
?@KevinB,因为我需要为锚保留一些HTML。我刚刚编辑了OP中的HTML,以反映文本中可能包含HTML。问题是,我需要在标题中包含链接。所以我需要保留一些html,但不是全部。问题是,我需要在标题中包含链接。因此,我需要保留一些html,而不是全部。不幸的是,.text()删除了其他html元素(如锚)。您在问题中没有说明您希望在没有锚标记和其他html元素的情况下获取文本吗?“基本上,我需要做的是删除第一个标记和任何换行符(如
)。然后将其分配给data fancybox标题属性。”我的解决方案在不删除原始标记和其他元素的情况下获取所述文本。对,我需要删除第一个标记,但可能还有其他标记。查看下面我的解决方案。我会把你的标记为接受,因为它让我走上了正确的道路!不幸的是,.text()删除了其他html元素(如锚定元素)。您在问题中没有声明希望在没有锚定标记和其他html元素的情况下获取文本吗?“基本上,我需要做的是删除第一个标记和任何换行符(如
)。然后将其分配给data fancybox标题属性。”我的解决方案在不删除原始标记和其他元素的情况下获取所述文本。对,我需要删除第一个标记,但可能还有其他标记。查看下面我的解决方案。我会把你的标记为接受,因为它让我走上了正确的道路!