html标签的尖括号转码为字符实体

剃刀原理 2019-11-18 378 阅读

本章节介绍一下如何将html标签两端的尖括号转换为字符实体,这个是非常有必要的,比如在实际应用中,可以要原文输出html标签,但是左右尖括号作为html标签的一部分,有可能会导致混乱,例如:

<div></div></div>

上面的代码我们原意是是原样输出"</div>",但是这会被浏览器认为是html语法标签,这样就会出现错误,索引进行转码是非常有必要的,代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.cxvn.com/" />
<title>html标签的尖括号转码为字符实体</title>
<script type="text/javascript">
function html_encode(str){
var s = "";
if(str.length == 0) return "";
s = str.replace(/&/g, ">");
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/ /g, "&nbsp;");
s = s.replace(/\\'/g, "'");
s = s.replace(/\\"/g, "&quot;");
s = s.replace(/\\n/g, "<br>");
return s;
}
function html_decode(str){
var s = "";
if(str.length == 0) return "";
s = str.replace(/>/g, "&");
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/&nbsp;/g, " ");
s = s.replace(/'/g, "\\'");
s = s.replace(/&quot;/g, "\\"");
s = s.replace(/<br>/g, "\\n");
return s;
}
window.onload=function(){
var odiv=document.getElementById("thediv");
odiv.innerHTML=html_encode("</div>");
}
</script>
</head>
<body>
<div id="thediv"></div>
</body>
</html>

实现对html尖括号和一些特殊的字符进行转换,上面也提供了解码的功能,没有演示而已。

最新游戏