【发布时间】:2011-10-18 08:05:30
【问题描述】:
考虑以下 HTML 页面片段:
<div id='myDiv'>
Line 1.<br />
Line 2<br />
These are <special> characters & must be escaped !@@><>
</div>
<input type='button' value='click' id='myButton' />
<textarea id='myTextArea'></textarea>
<script>
$(document).ready(function () {
$('#myButton').click(function () {
var text = $('#myDiv').text();
$('#myTextArea').val(text);
});
});
</script>
首先,有一个id为myDiv的div元素。它包含一些文本,类似于在我的生产网站运行时从 SQL 数据库中检索到的文本。
接下来,有一个按钮和一个文本区域。我希望myDiv 中的文本在单击按钮时出现在文本区域中。
但是,使用我提供的代码,换行符被删除了。考虑到转义特殊字符是绝对不可协商的,我该怎么办?
【问题讨论】:
-
我应该补充一点,从文本区域中的用户输入读取换行符对我来说一直没有问题。问题在于在文本区域中设置文本。到目前为止,我找到的唯一解决方案是将文本保存在序列化字符串中,但这真的感觉像是 KLUDGE。
-
在 Chrome 中为我工作。 jsfiddle.net/jasongennaro/8P8fH
标签: javascript jquery html textarea text-formatting