FF和IE - 在textarea中处理\ n的方式

时间:2010-10-31 00:19:56

标签: internet-explorer firefox input textarea line-breaks

我正在做一个带有jeditable的textarea。内容将从数据库中保存和加载。但我在IE和FF处理换行符的方式上遇到了一些问题。

经过一些调试后,我在FF中发现了一个神秘的行为。例如,如果我输入textarea:

1
2

它会返回

1<br>2

哪个好。但如果我写:

1
2
3

返回

1<br>2<br>
3

为什么?我该怎么做这个异常行为的正则表达式。

大气压。我正在做这个正则表达式:

  data      : function(value, settings) {
      /* Convert <br> to newline. */
      retval = value(/<br[\s\/]?>/gi, '\n');
      return retval;
 },

在IE中可以正常工作,但在FF中(因为这种行为)它会返回比预期更多的换行符。

你能帮忙吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

如果您希望文本中没有换行符,为什么不在将<br>转换为换行符之前将其删除?

value = value.replace(/(\r\n|[\r\n])/g,'');
retval = value.replace(/<br[\s\/]?>/gi, '\n');