textarea 换行处理

2,925 阅读1分钟

引子

textarea 中的换行格式,在其它地方显示时,需要保持其原有的换行格式。

换行

textarea 元素支持多行纯文本编辑。由于历史原因,元素的值有三种不同的形式:

  • row value 是其原始设置的值,它没有被标准化。
  • API value 是 value 接口定义中使用的值。它是标准化的,因此换行符使用 “LF”(U+000A) 字符。
  • 表单提交的 value。它是标准化的,因此换行符使用 U+000D CARRIAGE RETURN "CRLF" (U+000A) 字符对。

关于换行符,见回车和换行

要按照输入时格式显示,方法有:

使用 pre 标签

<pre> 元素表示预定义格式文本。在该元素中的文本通常按照原样的编排,以等宽字体的形式展现出来,文本中的空白符(比如空格和换行符)都会显示出来。

替换换行符

将换行符替换成 br 标签,以 innerHTML 的方式显示在元素中。

  // windows 下换行是 \r\n, linux 下是 \n, mac 下是 \r
  str = str.replace(/[\r\n]/g, '<br />');

这是以上方法的示例,移动端访问如下:

57-qrcode

参考资料

纯属瞎扯,如有雷同,纯属巧合。

最近无意间听到关于地毯作用的另一种解释。在现在日常生活中,地毯有储尘和装饰的作用。但很早之前,据说使用地毯是为了保护大地,担心人的脚步或动作会伤害到大地。这个想法很自然与人。