javascript - 在html中如何使"回车"生效, 即在数据库保存的是两行的状态?
ringa_lee
ringa_lee 2017-04-10 17:35:22
[JavaScript讨论组]

项目中是实现文本编辑的功能因为前端使用的三方和客户端的不同,所以需要做一些调整,现在需要把前端拿到的h5内容进行一些处理使每个</p>标签后跟上一个换行保存到数据库应该是这样的:
<p>第一行</p>
<p>第二行</p>
而不会是 <p>第一行</p><p>第二行</p> ,这个该怎么做处理呢?

ringa_lee
ringa_lee

ringa_lee

全部回复(4)
PHP中文网

在保存到数据前的获取html后可以先正则批量替换一下。
举个例子

'<p>233</p><p>66666</p>'.replace(/<\/(.*?)>/ig,a => a+'\n')
大家讲道理

0D0A就是回车换行的标志。你前端拿到H5的时候匹配一下正则,把所有的《/p》</hn> 能换行的结束标记后面都加上换行标志就可以了"\n"

大家讲道理

我正好做了这个业务的,你在接受到数据之后,用正则把rn全部匹配成</p><p>,然后再在首拼接<p>,尾部拼接</p>即可。

迷茫

看了下三方的源码,里面先是过滤掉rn,然后判断p标签里的内容是否为空,不为空则创建p节点否则不创建,所以我在创建完p节点后拼接了一个兄弟节点,这个节点是文本节点就是'n'了这样就可以了.

var p_text = document.createTextNode('n');
parent.appendChild( p_text );

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号