当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript htmlencode函数(ff兼容版) 主要是编辑器中反转html代码

Javascript
学习ExtJS(二) Button常用方法
学习ExtJS TextField常用方法
学习ExtJS Panel常用方法
学习ExtJS Window常用方法
学习ExtJS 访问容器对象
学习ExtJS border布局
学习ExtJS fit布局使用说明
学习ExtJS form布局
学习ExtJS accordion布局
学习ExtJS table布局
Javascript 日期处理之时区问题
JavaScript 监听textarea中按键事件
Javascript isArray 数组类型检测函数
JavaScript delete 属性的使用
防止动态加载JavaScript引起的内存泄漏问题
javascript Range对象跨浏览器常用操作
JavaScript 另类遍历数组实现代码
网页制作ajax特效实例
javascript修复浏览器中头痛问题
2008年关注基于JavaScript开发的产品

Javascript 中的 javascript htmlencode函数(ff兼容版) 主要是编辑器中反转html代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 422 ::
收藏到网摘: n/a

非常不错的htmlencode 方法,比用正则实现的更好,而且效率高,推荐使用第一种方法。

方法一:
用的浏览器内部转换器实现转换,要领是动态创建一个容器标签元素,如DIV,将要转换的字符串设置为这个元素的innerText(ie支持)||textContent(火狐支持),然后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串,显示的时候反过来就可以了(实际上显示的时候不消通过转换,直接赋值在div就可以正常显示的)。

点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

第二种方法: 正则替换
通过把正则表达式把<>和空格符转换成html编码,由于这种方法不是系统内置的所以很轻易出现有些特别标签没有替换的情况,并且效率低下
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

大家可以先运行测试下,我也发现了,还是第一种方法比较好用啊,真不错,大家一定要记住了。
另外还是一些编辑器使用的一些htmlencode函数,到时候大家根据需要添加,不过需要提醒的是,代码一定要测试啊,软晨学习网 ruanchen.com站长发布这条信息的时候测试确实很麻烦啊,修改了多次
复制代码 代码如下:

function HTMLEncode(text){
text = text.replace(/&/g, "&") ;
text = text.replace(/"/g, """) ;
text = text.replace(/</g, "<") ;
text = text.replace(/>/g, ">") ;
//text = text.replace(/\ /g," ");
text = text.replace(/\n/g,"<br>");
text = text.replace(/\t/g," ");
return text;
}