【发布时间】:2012-02-04 14:48:51
【问题描述】:
我在 JavaScript 中有一个变量,其中包含 html 文本区域的内容。当我打印变量时,用户输入的所有内容都被遗忘了。有什么方法可以找到字符串中的空格,以便我可以分隔每一行?
【问题讨论】:
标签: javascript html textarea spaces
我在 JavaScript 中有一个变量,其中包含 html 文本区域的内容。当我打印变量时,用户输入的所有内容都被遗忘了。有什么方法可以找到字符串中的空格,以便我可以分隔每一行?
【问题讨论】:
标签: javascript html textarea spaces
这是一个函数,您可以将其用于您的脚本:
function nl2br (str) {
var breakTag = ''; return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1'+ breakTag +'$2');
}
【讨论】:
HTML 折叠 adjacent whitespace - 因此,如果您在 HTML 中显示,那就是您所看到的。
您可以用不间断空格替换空格:  - 这将确保它们以 HTML 格式显示并且不会折叠。
另一种选择是将它们放在<pre> 元素中
【讨论】:
你的意思是所有的换行符?默认情况下,HTML 会忽略换行符并折叠空格。将它们打印在 <pre> 标记内,或查看 CSS white-space 属性:http://www.w3schools.com/cssref/pr_text_white-space.asp
您还可以使用<br> 标签替换换行符:
while (str.indexOf("\n") > -1) str = str.replace("\n","<br>");
【讨论】: