日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

兼容IE和FF的JS HTMLEncode和HTMLDecode的完整实例[转]

發布時間:2023/12/18 HTML 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 兼容IE和FF的JS HTMLEncode和HTMLDecode的完整实例[转] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

兼容IE和FF的JS HTMLEncode和HTMLDecode的完整實例,因為這個在在線編輯器和Ajax中經常用到,所以封裝成函數可以直接調用,希望對大家有幫助。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<title>HTMLEcode</title>
</head>
<body>

方法一:

用的瀏覽器內部轉換器實現轉換,方法是動態創建一個容器標簽元素,如DIV,將 要轉換的字符串設置為這個元素的innerText(ie支持) ||textContent(火狐支持),然后返回這個元素的innerHTML,即得到經過HTML編碼轉換的字符串,顯示的時候反過來就可以了(實際 上顯示的時候不用通過轉換,直接賦值在div就可以正常顯示的)。

<script type="text/javascript">
function HTMLEncode(html)
{
var temp = document.createElement ("div");
(temp.textContent
!= null) ? (temp.textContent = html) : (temp.innerText = html);
var output = temp.innerHTML;
temp
= null;
return output;
}

function HTMLDecode(text)
{
var temp = document.createElement("div");
temp.innerHTML
= text;
var output = temp.innerText || temp.textContent;
temp
= null;
return output;
}

var html = "<br>dffdf<p>qqqqq</p>";
var encodeHTML = HTMLEncode(html);
alert(
"方式一:" + encodeHTML);
var decodeHTML = HTMLDecode(encodeHTML);
alert(
"方式一:" + decodeHTML);

</script>

?

方 法二:

通過把正則表達式把<>和空格符轉換成html編碼,由于這種方式不是系統 內置的所以很容易出現有些特殊標簽沒有替換的情況,而且效率低下

<script type="text/javascript">

function HTMLEncode2(str)
{
var s = "";
if(str.length == 0) return "";
s
= str.replace(/&/g,"&amp;");
s
= s.replace(/</g,"&lt;");
s
= s.replace(/>/g,"&gt;");
s
= s.replace(/ /g,"&nbsp;");
s = s.replace(/\'/g,"&#39;");
s
= s.replace(/\"/g,"&quot;");
return s;
}
function HTMLDecode2(str)
{
var s = "";
if(str.length == 0) return "";
s
= str.replace(/&amp;/g,"&");
s
= s.replace(/&lt;/g,"<");
s
= s.replace(/&gt;/g,">");
s
= s.replace(/&nbsp;/g," ");
s
= s.replace(/&#39;/g,"\'");
s
= s.replace(/&quot;/g,"\"");
return s;
}
var html = "<br>ccccc<p>aaaaa</p>";
var encodeHTML = HTMLEncode2(html);
alert(
"方式二:" + encodeHTML);
var decodeHTML = HTMLDecode2("方式二:" + encodeHTML);
alert(decodeHTML);
</script>
</body>
</html>

?

轉載于:https://www.cnblogs.com/yingzi/archive/2012/03/14/2396156.html

總結

以上是生活随笔為你收集整理的兼容IE和FF的JS HTMLEncode和HTMLDecode的完整实例[转]的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。