js转html实体的方法


Posted in Javascript onSeptember 27, 2016

方法一:

用的浏览器内部转换器实现转换,方法是动态创建一个容器标签元素,如DIV,将要转换的字符串设置为这个元素的innerText,然后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串。

function HTMLEncode ( input ) 
{ 
var converter = document.createElement("DIV"); 
converter.innerText = input; 
var output = converter.innerHTML; 
converter = null; 
return output; 
}

当 然,还可以用相同的方法实现对字符串的HTMLDecode解码,但有个问题就是紧跟在字符" <"后面的非空字符将连同字符" <"同时显示不出来。当然,对字符串作相应处理是可以解决这个问题的,比如在字符" <"后面加个空格,解码后再去掉就行,这是后话。毕竟,要使用 HTMLDecode方法解码,自然是字符串已经经过HTMLEncode方法编码了,而经过HTMLEncode编码后的字符串,是不可能有字符 " <"存在的。

function HTMLDecode ( input ) 
{ 
var converter = document.createElement("DIV"); 
converter.innerHTML = input; 
var output = converter.innerText; 
converter = null; 
return output; 
}

方法二:

<script  language=javascript> 

 function  HTMLEnCode(str) 
 { 
    var  s  =  ""; 
    if  (str.length  ==  0)  return  ""; 
    s  =  str.replace(/&/g,  ">"); 
    s  =  s.replace(/ </g,    "<"); 
    s  =  s.replace(/>/g,    ">"); 
    s  =  s.replace(/  /g,    " "); 
    s  =  s.replace(/\'/g,   "'"); 
    s  =  s.replace(/\"/g,   """); 
    s  =  s.replace(/\n/g,   " <br>"); 
    return  s; 
 } 
 function  HTMLDeCode(str) 
 { 
    var  s  =  ""; 
    if  (str.length  ==  0)  return  ""; 
    s  =  str.replace(/>/g,  "&"); 
    s  =  s.replace(/</g,    " <"); 
    s  =  s.replace(/>/g,    ">"); 
    s  =  s.replace(/ /g,    "  "); 
    s  =  s.replace(/'/g,   "\'"); 
    s  =  s.replace(/"/g,   "\""); 
    s  =  s.replace(/ <br>/g,   "\n"); 
    return  s; 
 } 
 </script>

以上就是小编为大家带来的js转html实体的方法的全部内容了,希望对大家有所帮助,多多支持三水点靠木~

Javascript 相关文章推荐
ext for eclipse插件安装方法
Apr 27 Javascript
node.js中的http.response.end方法使用说明
Dec 14 Javascript
jQuery元素选择器用法实例
Dec 23 Javascript
javascript去除字符串左右两端的空格
Feb 05 Javascript
jquery validate.js表单验证入门实例(附源码)
Nov 10 Javascript
基于JQuery实现分隔条的功能
Jun 17 Javascript
javascript 数组的正态分布排序的问题
Jul 31 Javascript
js技巧之十几行的代码实现vue.watch代码
Jun 09 Javascript
vue组件实践之可搜索下拉框功能
Nov 25 Javascript
vue 中使用 watch 出现了如下的报错的原因分析
May 21 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
Feb 23 Vue.js
js不常见操作运算符总结
Nov 20 Javascript
JSON与String互转的实现方法(Javascript)
Sep 27 #Javascript
通过JS获取Request.QueryString()参数的值实现方法
Sep 27 #Javascript
微信小程序使用第三方库Underscore.js步骤详解
Sep 27 #Javascript
微信小程序使用第三方库Immutable.js实例详解
Sep 27 #Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
Sep 27 #Javascript
微信小程序 开发指南详解
Sep 27 #Javascript
纯JavaScript 实现flappy bird小游戏实例代码
Sep 27 #Javascript
You might like
一个捕获函数输出的函数
2007/02/14 PHP
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
2014/01/19 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
2016/12/15 PHP
js精美的幻灯片画集特效代码分享
2015/08/29 Javascript
JavaScript继承模式粗探
2016/01/12 Javascript
Javascript字符串拼接小技巧(推荐)
2016/06/02 Javascript
AngularJS教程 ng-style 指令简单示例
2016/08/03 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
原生js实现下拉框功能(支持键盘事件)
2017/01/13 Javascript
原生JS轮播图插件
2017/02/09 Javascript
javascript深拷贝和浅拷贝详解
2017/02/14 Javascript
Node.js五大应用性能技巧小结(必须收藏)
2017/08/09 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能
2018/04/28 Javascript
javascript和php使用ajax通信传递JSON的实例
2018/08/21 Javascript
如何在微信小程序中存setStorage
2019/12/13 Javascript
在Vue项目中使用Typescript的实现
2019/12/19 Javascript
如何构建一个Vue插件并生成npm包
2020/10/26 Javascript
[01:04:39]OG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python中MYSQLdb出现乱码的解决方法
2014/10/11 Python
Python运算符重载用法实例
2015/05/28 Python
浅谈Python 中整型对象的存储问题
2016/05/16 Python
python 删除列表里所有空格项的方法总结
2018/04/18 Python
python 单线程和异步协程工作方式解析
2019/09/28 Python
Python 异步协程函数原理及实例详解
2019/11/13 Python
python socket 聊天室实例代码详解
2019/11/14 Python
Jupyter Notebook远程登录及密码设置操作
2020/04/10 Python
Python网络爬虫四大选择器用法原理总结
2020/06/01 Python
英国领先的大码时装品牌之一:Elvi
2018/08/26 全球购物
现代绅士日常奢侈品:Todd Snyder
2019/12/13 全球购物
.NET初级开发工程师面试题
2014/04/18 面试题
高中生学习总结的自我评价范文
2013/10/13 职场文书
求职个人评价范文
2014/04/09 职场文书
父亲节活动策划方案
2014/08/24 职场文书
《童年的发现》教学反思
2016/02/18 职场文书
vue实现简易音乐播放器
2022/08/14 Vue.js