0
点赞
收藏
分享

微信扫一扫

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; 
}

本人对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 条评论