Javascript 中对HTML编码和解码的方法

String.prototype.HTMLEncode = function() {
var temp = document.createElement ("div");
(temp.textContent != null) ? (temp.textContent = this) : (temp.innerText = this);
var output = temp.innerHTML;
temp = null;
return output;
}
String.prototype.HTMLDecode = function() {
var temp = document.createElement("div");
temp.innerHTML = this;
var output = temp.innerText || temp.textContent;
temp = null;
return output;
}
上面代码转自:http://www.jb51.net/article/18396.htm

 

本人对javascript的核心技术不是太熟悉,再加上现在又在用不熟悉的EXT来编写前台页面代码,所以只得用最笨的方法,不扩展String自己写处理函数:

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

htmlEncode:function(str){
  var temp = document.createElement ("div");

  (temp.textContent != null) ? (temp.textContent = str) : (temp.innerText = str); 
  var output = temp.innerHTML;
  temp = null;
  return output; 
 }

其中用到的textContent和innerText 属性取到的内容是一样的

原因是firefox不支持innerText属性,但其提供的textContent属性和innerText具有一样的作用。所以上面的代码可以兼容IE和firefox

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值