Javascript 从字符串中删除图像标记

Javascript 从字符串中删除图像标记,javascript,jquery,Javascript,Jquery,我正在尝试删除 虚拟文本虚拟文本 虚拟文本虚拟文本虚拟文本虚拟文本虚拟文本 虚拟文本虚拟文本 图像标签和图像src的位置可能不同,但主要目的是移除标签 replace在我的情况下不起作用 有没有办法做到这一点?非常感谢 如果您使用PHP从数据库返回数据,您考虑过吗?它删除了HTML标记(还有PHP!) 或者您正在寻找JavaScript解决方案?尝试还有很多其他的PHP函数被移植到JavaScript中 如果我理解正确,您只想删除html标记并将文本保留在客户端?为什么不将其转换为jQuery

我正在尝试删除

虚拟文本虚拟文本
虚拟文本虚拟文本虚拟文本虚拟文本虚拟文本
虚拟文本虚拟文本
图像标签
图像src
的位置可能不同,但主要目的是移除
标签


replace
在我的情况下不起作用


有没有办法做到这一点?非常感谢

如果您使用PHP从数据库返回数据,您考虑过吗?它删除了HTML标记(还有PHP!)


或者您正在寻找JavaScript解决方案?尝试还有很多其他的PHP函数被移植到JavaScript中

如果我理解正确,您只想删除html标记并将文本保留在客户端?为什么不将其转换为jQuery对象并使用.text()方法呢

除非你想保留其他标签,否则我会发布另一个答案

编辑:

如果您只想删除图像元素。。您可以使用过滤器功能

$(yourstring).text();​


从技术上讲,
$(x).filter(':not(img)).text()
应该可以工作,但不确定为什么它不能工作

如果您想删除所有这些,您可以使用:

$('li > img').remove();

你可以试试这样的

$('img').remove();
$(文档).ready(函数(){
$(“img”)。每个(函数(){
var i=$(this.attr(“src”);
$(“.display”).append(“”+i+”

”); }); });

使用append,您可以在html页面中看到结果。

Jay,这是一个多么棒的链接。我以为这是一个笑话,然后我读到了,就想。哇,这是一个多么合理、耐心的方法来解决这个问题。“
replace
在我的情况下不起作用”-为什么不呢?你应该在jquery对象中包装你的字符串,然后在所有图像标记上使用remove()方法。这将是一个完美的分享机会,但不幸的是,这个网站似乎已经关闭了
<img src='http://placekitten.com/g/200/300'/>
<ul>
  <li>dummy textdummy text dummy text dummy text dummy text <img src='http://placehold.it/350x150'/></li>
  <li>dummy textdummy text <img src='http://placekitten.com/200/300'/></li>
  <li>dummy textdummy text dummy textdummy text dummy textdummy text <img src='http://lorempixel.com/400/200/'/></li>
</ul>
$('li > img').remove();
$('img').remove();
$(document).ready(function(){
    $("img").each(function(){
        var i = $(this).attr("src");
        $(".display").append('<p>' + i + '</p>'); 
    });
});