我正在使用一些 JSON 来解析 Facebook 页面中的信息以显示在我的网站上,这几乎完美地工作!所有信息都被拉入,但是我丢失了 html 中的换行符(我想保留)。
通过graph api可以看到新行显示为\n
,所以我能想到的最简单的方法是使用 jQuery 来查找任何 \n
并将其替换为 <br />
我环顾四周,但有一个简单的查找和替换方法,例如:
$(span#about_" + index).html(this.html().replace('\n','<br />'));
但是这不起作用,因为\n 标签没有传递到 html。
所以我想知道是否有人知道我如何才能实现这一目标?任何帮助将不胜感激!
我的原始 JSON 请求如下:
$.each(json, function(index, item) {
$(".facebook span#likes_" + index).html("<a href='" + item.link + "' alt='" + item.name + " on Facebook'><ul><li>" + item.likes + "</li></ul><h4>Facebook Fans</h4></a>");
$("span#about_" + index).html("<p>" + item.description + "</p>");
});
提前非常感谢,MB
最佳答案
你能做item.description.replace(/\n/g, '<br />')
?
看来替换方法只会替换第一次出现的位置。如果您使用正则表达式,您可以告诉它全局替换。
$.each(json, function(index, item) {
$(".facebook span#likes_" + index).html("<a href='" + item.link +
"' alt='" + item.name + " on Facebook'><ul><li>" + item.likes +
"</li></ul><h4>Facebook Fans</h4></a>");
$("span#about_" + index).html("<p>" +
item.description.replace(/\n/g, '<br />') + "</p>");
});
关于jquery - Facebook API 替换 JSON 中的新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9792485/