我正在尝试将一些文本解析为textarea控件,同时用普通的换行符替换所有的文本。
我已经能够在Windows中通过用CR
取代
来实现它(它与CRLF
无法正常工作,它给了我换行+空白空间)但我'我担心这段代码在Unix / Mac中不起作用,因为它们使用LF
进行换行。
有没有办法在javascript中使用系统默认换行符?类似于.Net中的Environment.NewLine
(我无法在此编辑器中编写反斜杠,但我对\r
使用CR
而\n
使用LF
编辑:我应该提到一切都适用于FF,它一如既往的Internet Explorer(8)我遇到了问题。
EDIT2:
我可以使用此代码重现我的问题。当我在IE8中运行它时,我得到“row1 row2”,但是当我在FF中运行时,我得到真正的换行符:
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
<script type="text/javascript">
function fill() {
var text = "row1<br /><br />row2";
$('#fill_me').text(text.replace(/<br \/>/g, '\n'));
}
</script>
</head>
<body onload="fill()">
<textarea rows=10 cols=100 id="fill_me"></textarea>
</body>
</html>
答案 0 :(得分:1)
您始终可以在Javascript中使用\n
作为换行符。
例如声明,
document.getElementById('mytextarea').value = "This is some text.\n\nAnd here is some more."
;
在“这是一些文字”之间添加两个回报。并且“还有更多。”在IE,Firefox,Chrome,Safari等中
答案 1 :(得分:1)