Jquery 将中的纯文本转换为HTML

Jquery 将中的纯文本转换为HTML,jquery,text,Jquery,Text,我有一个脚本,在某一点上,我通过Ajax调用获取HTML(数据)。我必须将此HTML转换为纯文本,如下所示: $("#div").text(data); 现在,我想改变这一点,再次生成文本HTML。我想知道有没有一种简单的Jquery方法可以做到这一点?我试过: $("#div").text(data).end().html(); 不走运。您在问题中使用的html函数也可以接受参数。请在此处阅读所有相关内容: 基本上你需要做的就是 var div = $(yourdiv); div.html

我有一个脚本,在某一点上,我通过Ajax调用获取HTML(数据)。我必须将此HTML转换为纯文本,如下所示:

$("#div").text(data);
现在,我想改变这一点,再次生成文本HTML。我想知道有没有一种简单的Jquery方法可以做到这一点?我试过:

$("#div").text(data).end().html();

不走运。

您在问题中使用的html函数也可以接受参数。请在此处阅读所有相关内容:

基本上你需要做的就是

var div = $(yourdiv);
div.html(div.text())

例如在本例中:

尝试将其直接传递给jQuery本身()。它将获取原始HTML字符串并尝试将其解析为新的DOM片段。

您需要保留原始响应才能执行此操作

$("#hiddendiv").html(data);
$("#div").text(data);
然后你可以把它拿出来

var html = $("#hiddendiv").html();
根据评论更新…

您可以在显示之前删除该元素

var html = $(data);
$('#cookiediv', html).hide();
$('#div').html(html);

如果cookie消息具有
id=“cookiediv”
,您可能需要调整选择器以访问此div,但几乎可以肯定地获取它。

如果您的意思是获取文本并使其在HTML中工作

<div id="div"></div>

jQuery:

var data='<a href="blah">blah</a>';
$('#div').text(data);
alert('ready...'); // just making you see the html
$('#div').html($('#div').text()); 
var数据=”;
$('#div')。文本(数据);
警报('ready…');//只是让你看到html
$('#div').html($('#div').text());
然后


取决于要将其转换为什么HTML。它无法读懂你的心思,因为你删除了HTML。为什么不将AJAX html存储在变量中,稍后调用?数据是什么样子的?@Youss,对不起,我误解了你的问题。是否确实要将标记作为文本放入元素中,然后立即使用与HTML元素相同的标记覆盖它HTML@Fr艾德里克·哈米迪:是的,请看我对史蒂夫·芬顿回答的评论,在我的案例中,这不起作用。为了解决这个问题:我从中获取数据的网页显示了一条cookie消息并隐藏了所有内容。所以var=HTML只会让我看到cookie窗口。但是我注意到,如果我得到文本(),我会得到网站的所有文本,因此现在如果我将其转换为HTML,我会得到完整的网站,而不会出现令人讨厌的cookie消息。我为该场景添加了一个建议。如果你能给我看你得到的原始数据(例如在JSFIDLE上),我可以说得更具体一些。我开始觉得我有一个糟糕的问题…这是一个网站:没有cookie窗口,它是一个完全不同的url,访问者首先被引导到其他url…这很奇怪,因为获取文本似乎只获取主网站的文本,所以删除tmg同意不会这样做,因为我现在意识到它位于不同的url上……到目前为止,这是最好的解决方案。
$.fn.toHtml=function(){
   return $(this).html($(this).text())
}
$('#div').toHtml()