显示文本时丢失换行符

时间:2015-06-20 05:05:18

标签: javascript jquery html jquery-mobile

我可以看到换行符"↵"对于Chrome开发者工具中的字符串

<br>↵↵<br>Event Status: confirmed↵<br>Event Description: Hog Day (Night )and Hog Day (Day)↵↵Friday...

如果我双击它并粘贴到记事本,则会保留换行符。

当我将字符串保存到这样的对象时,

var summary = el.find("summary").text();
var volunteerEvent = {title: title, summary: summary}

并最终在页面上显示,

$('#volunteerEventDescription').empty().html(event.summary);

换行符消失了,它是一大块文字。

如何保留换行符?

2 个答案:

答案 0 :(得分:3)

我看到两个明显的选择。哪一个适合您,取决于您对所需格式的控制程度。

  1. 使用operator*()标记,将遵循新行。 pre用于预先格式化的文本,并使用非比例字体,因此可能无法按照您的意愿呈现。有关详细信息,请参阅pre on MDN

  2. pre标记替换新行。您可以使用正则表达式执行此操作:br。另一个问题上存在更强大的正则表达式:jQuery convert line breaks to br (nl2br equivalent)

答案 1 :(得分:0)

可以在php.js中找到与PHP等效的nl2br函数:http://phpjs.org/functions/nl2br/nl2br,正如名称可能巧妙地暗示的那样,将换行符转换为中断标记。