Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何删除jquery中的特定标记?_Javascript_Jquery - Fatal编程技术网

Javascript 如何删除jquery中的特定标记?

Javascript 如何删除jquery中的特定标记?,javascript,jquery,Javascript,Jquery,例如: html = '<font><a>Test Message</a></font>'; html = html.find('font').remove(); html='testmessage'; html=html.find('font').remove(); 预期输出: <a>Test Message</a> 测试消息 实际上,这段代码不起作用。请帮我解决我的问题。你可以这样使用它 $(html).fin

例如:

html = '<font><a>Test Message</a></font>';

html = html.find('font').remove();
html='testmessage';
html=html.find('font').remove();
预期输出:

<a>Test Message</a>
测试消息

实际上,这段代码不起作用。请帮我解决我的问题。

你可以这样使用它

$(html).find('font').remove();

正如@Tushar评论的那样:这也将删除锚元素 在
内部,导致给出空字符串

所以你可以用

html = '<font><a>Test Message</a></font>';
new_html = $(html).find('a').clone(); // this is just an anchor
// now your new html is <a>Test Message</a>
html='testmessage';
new_html=$(html).find('a').clone();//这只是一个锚
//现在,您的新html是测试消息

使用jquery unwrap删除
a
标记
font
然后将其附加到dynamicali创建的div中,并调用
html
方法以获得结果 尝试:

html=$('').append($(html).find('a').unwrap()).html();

要删除元素和内容,主要应该使用两种jQuery方法:

  • $(html).find(selector).remove()
    -删除所选元素(及其子元素)

  • $(html).find(selector).empty()
    -从所选元素中删除子元素

如果您需要更详细的答案和正确的选择器,请提供更详细的代码


指向jQuery和方法的链接。

由于您有一个包含HTML标记的字符串,因此可以使用字符串替换函数删除不需要的元素

要仅删除
,可以在此处使用regex

html='testmessage';
html=html.replace(//g',);
document.getElementById('result').innerText=html;
log(html)
html=$(“测试消息”);
html.find('font').contents().unwrap();
log(html.html());

能否添加完整的代码、实时代码片段/jsfiddle演示标签(必须删除)是如何添加的看起来像?html值有哪些值?只有在dom中附加html时才能删除。首先在dom中附加html,然后删除它。应该在
a
元素上应用。注意:这也会删除
中的锚元素,从而产生空字符串,可能不是OP想要的关于您的第二个代码段:您不需要最后一条语句,您可以使用
new\uhtml
获取锚定标记标记。对于给定的示例,这将起作用,如果字符串包含
而不是
,或者同时包含
@Tushar,那么在jquery和javascript中您比我知道得多。。所以我相信你知道,如果我们能敞开心扉,相信我们会找到越来越多不同的解决方案。。这里我们有一个有问题的案例,并试图处理这个案例。。这就是答案,
删除
清空
在这种情况下都没有帮助。它们都将删除
字体中的锚元素,这里OP只想删除
,而不想删除它们的子元素/子元素。
  html =  $('<div>').append($(html).find('a').unwrap()).html();
html = $('<font><a>Test Message</a></font>');
html.find('font').contents().unwrap();
console.log(html.html());