欢迎来到代码驿站!

JavaScript代码

当前位置:首页 > 网页前端 > JavaScript代码

js转html实体的方法

时间:2021-08-08 08:26:10|栏目:JavaScript代码|点击:

方法一:

用的浏览器内部转换器实现转换,方法是动态创建一个容器标签元素,如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,  "&gt;"); 
    s  =  s.replace(/ </g,    "&lt;"); 
    s  =  s.replace(/>/g,    "&gt;"); 
    s  =  s.replace(/  /g,    "&nbsp;"); 
    s  =  s.replace(/\'/g,   "'"); 
    s  =  s.replace(/\"/g,   "&quot;"); 
    s  =  s.replace(/\n/g,   " <br>"); 
    return  s; 
 } 
 function  HTMLDeCode(str) 
 { 
    var  s  =  ""; 
    if  (str.length  ==  0)  return  ""; 
    s  =  str.replace(/&gt;/g,  "&"); 
    s  =  s.replace(/&lt;/g,    " <"); 
    s  =  s.replace(/&gt;/g,    ">"); 
    s  =  s.replace(/&nbsp;/g,    "  "); 
    s  =  s.replace(/'/g,   "\'"); 
    s  =  s.replace(/&quot;/g,   "\""); 
    s  =  s.replace(/ <br>/g,   "\n"); 
    return  s; 
 } 
 </script>

上一篇:发一个分页的js

栏    目:JavaScript代码

下一篇:深入探讨JavaScript的最基本部分之执行上下文

本文标题:js转html实体的方法

本文地址:http://www.codeinn.net/misctech/165229.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有