背景如下:
数据库表 Worker 中有一个 des 字段,其中内容有换行符。
1.前端直接使用<textarea cols="30" rows="10">{{worker.des}}</textarea>的方式显示,换行是正常的。
2.因为涉及 js 处理,需要把{{worker.des}}的值传递给 js 方法,经过处理后再设置到 textarea 中,此时我没有做任何处理,只是做了传值处理,然后重新把内容设置到 textarea 中,换行效果就没了。
例如:document.getElementById('des').innerText='{{worker.des}}';
3.进一步验证,怀疑传值给 js 的时候,换行符因为某种原因被删了,打印两者的长度信息:
{{worker.des|length}} 比 js 代码'{{worker.des}}'.length 的长度多 1
问题:
1.这是什么原因?
2.在 Django 的前端怎么处理这个问题,能让我能在 js 处理后,能在 textarea 中正确显示换行。
3.我想过在后端 view 中把换行符替换成 br,不过这个是最后实在不行的方案吧。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.