首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery text()忽略带有nl2br的<br />

jQuery text()忽略带有nl2br的<br />
EN

Stack Overflow用户
提问于 2015-08-04 17:26:29
回答 2查看 347关注 0票数 1

在通过json检索文本信息时,我遇到了问题,并且希望将格式良好的文本信息显示为<p>标记。

设想以下案文:

描述:检索jQuery对象匹配的DOM元素。 请参阅:https://api.jquery.com/get/

如你所见,它有三条线。

当我通过PHP直接写入<p>标记时,它可以工作。

代码语言:javascript
复制
<p>echo nlbr2($comment);</p>

但是我想要的是通过JSON检索这个文本,并使用jQuery将文本发送到<p>标记。

代码语言:javascript
复制
echo json_encode(array('status' => 1, 'comment' => nl2br($comment)));

答案的输出是:

代码语言:javascript
复制
{"status":1,"comment":"Description: Retrieve the DOM elements matched by the jQuery object.<br \/>\r\nSee: https:\/\/api.jquery.com\/get\/"}

在jQuery方面,我做了以下工作:

代码语言:javascript
复制
var json = JSON.parse(response);

$('p').text(json.comment);

但是,当查看<p>标记的文本时,它显示:

我也试过替换,但不起作用。

代码语言:javascript
复制
json.comment.replace(/\n/g, '<br />')

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-04 17:28:29

使用.text()代替.html()

代码语言:javascript
复制
$('p').html(json.comment);
票数 3
EN

Stack Overflow用户

发布于 2015-08-04 17:51:18

text()总是将html标记表示为字符串。如果您想使用html标记,那么使用html()将是最好的选择。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31815606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档