博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js获取textarea标签中的换行符和空格。
阅读量:6691 次
发布时间:2019-06-25

本文共 768 字,大约阅读时间需要 2 分钟。

hot3.png

需求:

获取到textarea标签内的格式(换行符、空格)取到,存入数据库,展示的时候能够保留基本格式。

解决思路:

IE9以上、FF、chrome的换行为\n, IE7-8的时候换行为\r\n,空格都为\s

所以需要利用replace把不同浏览器的\n和\r\n都替换为html代码的</br>,把\s空格替换为html的&nbsp 

注:如果使用jQuery的val()获取textarea的值,取得的值是不含有回车(\r)字符的。但是如果该值是通过 XHR 传递给服务器的,回车(\r)字符会被保留(或者是被浏览器添加的,但是在原始数据中并不包含回车(\r))。

该例对\r和\r\n都做了replace替换,实际效果不受影响,只需要注意一下有区别。

代码如下:

html:

js:

运行结果:

第一次弹窗

005752_jKdV_2680178.png

第二次弹窗

005806_3NXL_2680178.png

html显示在div中

 005937_QrDF_2680178.png

 

扩展:

写一个公共函数处理该类问题。

/* * 根据Value格式化为带有换行、空格格式的HTML代码 * @param strValue {String} 需要转换的值 * @return  {String}转换后的HTML代码 * @example   * getFormatCode("测\r\n\s试")  =>  “测
&nbsp试” */var getFormatCode=function(strValue){ return strValue.replace(/\r\n/g, '
').replace(/\n/g, '
').replace(/\s/g, ' ');}

调用getFormatCode即可得到拿到转换后的代码,随后可按需求自行处理(入库等)。

转载于:https://my.oschina.net/CrazyBoy1024/blog/1149679

你可能感兴趣的文章
Codeforces Round #321 (Div. 2)
查看>>
Spring MVC标签<mvc: annotation-driven />小结 原
查看>>
HashMap和Hashtable的区别
查看>>
Oracle EBS-SQL (INV-5):检查期间拉式物料领用记录数.sql
查看>>
Python之with语句原理
查看>>
在Window环境下多线程与CPU资源分配原则
查看>>
20170303新的开始
查看>>
Python--day25--复习(单继承和多继承的总结)
查看>>
Python--day39--进程池原理及效率测试
查看>>
@Html.EditFor()不能添加“只读”html属性;以及disable属性的坑
查看>>
Logger日志级别说明及设置方法、说明
查看>>
7-1 列出连通集 (25 分)
查看>>
Mybatis之Mapper动态代理
查看>>
【转】楼天城楼教主的acm心路历程(作为励志用)
查看>>
vw、vh、vmin、vmax 的含义
查看>>
04.设计模式_抽象工厂模式
查看>>
vue项目搭建
查看>>
c lang codesnippets
查看>>
Machine Learning
查看>>
Ext概述
查看>>