Textarea在IE8 Newline问题

Gar*_*ett 4 javascript jquery textarea newline internet-explorer-8

我正在制作一个跨浏览器的表单,这需要一个textarea.此textarea通过两种方式接收数据: - 向服务器发送Ajax调用并返回数据 - 用户输入的数据

http://jsfiddle.net/garrettwong/x3KSP/

我在IE8上遇到问题,其中textarea文本没有格式化(换行未被读取),在Chrome中,相同的代码,很好地格式化textarea.我希望尽可能使用单独的JavaScript解决方案,但我不确定从哪里开始.

epa*_*llo 8

你为什么用text()?使用设置值val().

新线通常是\n\r.


Fab*_*tté 5

做一个替换操作,以确保\r每个之前有一个\n:

str = str.replace(/\r?\n/g, "\r\n");
Run Code Online (Sandbox Code Playgroud)

小提琴

浏览器用于\r\n换行,但现代浏览器(如Chrome和Firefox)也可以处理Unix风格的\n换行符.IE8需要适当的\r\n换行符,这也适用于所有其他浏览器.

正如@epascarello所说,.val()用来操纵textarea的value财产.