假设我有
<input type="hidden" id="in1">
...
<p id="editable_p"></p>
<script>
$('#some_button').click( function() {
$('#in1').val($('#editable_p').text());
});
</script>
显然,我的意图是将隐藏字段的值设置为
标记的内容。这行得通,但是它不保留换行符,这对我来说很重要。是否有一个基本的库函数可以复制维护换行符的可编辑段落的值,或者是否有某种扩展的 hack 必须执行才能使它按我的意图工作?
提前致谢。
最佳答案
您可能会发现您的#editable_p.p 中有许多文本节点,并且根据许多 XML 类型环境调用 text(),只会连接后代树中文本节点中的字符串,可能会丢失结构。这个操作可以对换行符和其他空白做一些奇怪的事情。
为避免这种情况,迭代实际的文本节点,并自行连接字符串,必要时添加\n 行尾。假设您在这方面取得了成功并且字符串带有换行符,我认为 talereader 可能是正确的,可能需要文本区域或类似的东西来表示结果字符串,并将其忠实地提交给服务器。
使用 JQuery 选择文本节点已经在 How do I select text nodes with jQuery?
关于javascript - jquery/javascript 在复制文本时保持换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8580863/