1. var HtmlUtil = {
  2. 2 /*1.用浏览器内部转换器实现html编码(转义)*/
  3. 3 htmlEncode:function (html){
  4. 4 //1.首先动态创建一个容器标签元素,如DIV
  5. 5 var temp = document.createElement ("div");
  6. 6 //2.然后将要转换的字符串设置为这个元素的innerText或者textContent
  7. 7 (temp.textContent != undefined ) ? (temp.textContent = html) : (temp.innerText = html);
  8. 8 //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了
  9. 9 var output = temp.innerHTML;
  10. 10 temp = null;
  11. 11 return output;
  12. 12 },
  13. 13 /*2.用浏览器内部转换器实现html解码(反转义)*/
  14. 14 htmlDecode:function (text){
  15. 15 //1.首先动态创建一个容器标签元素,如DIV
  16. 16 var temp = document.createElement("div");
  17. 17 //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)
  18. 18 temp.innerHTML = text;
  19. 19 //3.最后返回这个元素的innerText或者textContent,即得到经过HTML解码的字符串了。
  20. 20 var output = temp.innerText || temp.textContent;
  21. 21 temp = null;
  22. 22 return output;
  23. 23 },
  24. 24 /*3.用正则表达式实现html编码(转义)*/
  25. 25 htmlEncodeByRegExp:function (str){
  26. 26 var temp = "";
  27. 27 if(str.length == 0) return "";
  28. 28 temp = str.replace(/&/g,"&");
  29. 29 temp = temp.replace(/</g,"&lt;");
  30. 30 temp = temp.replace(/>/g,"&gt;");
  31. 31 temp = temp.replace(/\s/g,"&nbsp;");
  32. 32 temp = temp.replace(/\'/g,"'");
  33. 33 temp = temp.replace(/\"/g,"&quot;");
  34. 34 return temp;
  35. 35 },
  36. 36 /*4.用正则表达式实现html解码(反转义)*/
  37. 37 htmlDecodeByRegExp:function (str){
  38. 38 var temp = "";
  39. 39 if(str.length == 0) return "";
  40. 40 temp = str.replace(/&amp;/g,"&");
  41. 41 temp = temp.replace(/&lt;/g,"<");
  42. 42 temp = temp.replace(/&gt;/g,">");
  43. 43 temp = temp.replace(/&nbsp;/g," ");
  44. 44 temp = temp.replace(/'/g,"\'");
  45. 45 temp = temp.replace(/&quot;/g,"\"");
  46. 46 return temp;
  47. 47 },
  48. 48 /*5.用正则表达式实现html编码(转义)(另一种写法)*/
  49. 49 html2Escape:function(sHtml) {
  50. 50 return sHtml.replace(/[<>&"]/g,function(c){return {'<':'&lt;','>':'&gt;','&':'&amp;','"':'&quot;'}[c];});
  51. 51 },
  52. 52 /*6.用正则表达式实现html解码(反转义)(另一种写法)*/
  53. 53 escape2Html:function (str) {
  54. 54 var arrEntities={'lt':'<','gt':'>','nbsp':' ','amp':'&','quot':'"'};
  55. 55 return str.replace(/&(lt|gt|nbsp|amp|quot);/ig,function(all,t){return arrEntities[t];});
  56. 56 }
  57. 57 };

text-html 转译的更多相关文章

  1. 无限存储之胖文本数据库TTD(Thick Text Database)

    无限存储之胖文本数据库TTD(Thick Text Database) 阅读:  评论:  作者:Rybby  日期:  来源:rybby.com 所谓的“胖”就是多.大.丰富的意思,像我们平时看到的 ...

  2. HTML基础之标签简单认识

    简介 HTML(Hyper Text Markup Language)译为"超文本标记语言",主要是通过HTML标记对网页中的文本.图片.声音等内容进行描述 HTML之所以称为超文 ...

  3. HTML基础入门学习

    上一篇给大家介绍了学习HTML的准备工作,本文开始带大家步入HTML的学习 一.HTML基础 网页的组成: HTML:页面构成 css:页面样式表现 JavaScript:交互行为 HTML简介: H ...

  4. [译]试用新的System.Text.Json API

    译注 可能有的小伙伴已经知道了,在.NET Core 3.0中微软加入了对JSON的内置支持. 一直以来.NET开发者们已经习惯使用Json.NET这个强大的库来处理JSON. 那么.NET为什么要增 ...

  5. 【译】System.Text.Json 的下一步是什么

    .NET 5.0 最近发布了,并带来了许多新特性和性能改进.System.Text.Json 也不例外.我们改进了性能和可靠性,并使熟悉 Newtonsoft.Json 的人更容易采用它.在这篇文章中 ...

  6. [译]Angular2 和TypeScript -- 一次简要的预览

    原文链接:https://www.infoq.com/articles/Angular2-TypeScript-High-Level-Overview 作者:  Yakov Fain Posted o ...

  7. [译]:Xamarin.Android平台功能——位置服务

    返回索引目录 原文链接:Location Services. 译文链接:Xamarin.Android平台功能--位置服务 本部分介绍位置服务以及与如何使用位置提供商服务 Location Servi ...

  8. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen深入理解

    原文链接:Hello, Android Multiscreen_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android Multiscreen深入理解. 本 ...

  9. [译]:Xamarin.Android开发入门——Hello,Android Multiscreen快速上手

    原文链接:Hello, Android Multiscreen Quickstart. 译文链接:Hello,Android Multiscreen快速上手 本部分介绍利用Xamarin.Androi ...

  10. [译]:Xamarin.Android开发入门——Hello,Android深入理解

    返回索引目录 原文链接:Hello, Android_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android深入理解 本部分介绍利用Xamarin开发And ...

随机推荐

  1. Oracle之视图联合查询加排序问题

    在公司修改bug,有这样的需求:需要从两张视图中查出相同字段的数据,按照导师姓名先排序,再按照学号排序 union联合两张表,SELECT * from((SELECT DS_ID,PYLX_ID,Y ...

  2. Tools: geos 使用指南

    1. 下载geos 2. 进入VS开发人员命令提示3.依次执行如下命令 >VCVARS32.BAT>cd D:\DevTool\geos-3.7.0>atuogen.bat>n ...

  3. 使用sqlyog工具同步两个相同结构的数据库之间的数据

    compare two database data 因为工作上遇到 同一个项目被部署到不同服务器上,原项目(后统称"源")在运行中,后部署的项目(后统称"目标" ...

  4. openwrt redis

    2071 make V=s 2072 cd build_dir/target-x86_64_uClibc-0.9.33.2/root-x86/ cd package/network/services/ ...

  5. Q:简单实现URL只能页面跳转,禁止直接访问

    sessionStorage 用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据,且不同标签页的session不能共享,通过此特性来控制某个页面只能通过上级页面同标签页跳转 ...

  6. JUC 一 线程池

    线程 线程,是程序执行的最小单元.线程是进程中的其中一个实体,是被系统独立调度和分派的基本单位 它可与同属一个进程的其它线程共享进程所拥有的全部资源. 一个线程可以创建和撤消另一个线程,同一进程中的多 ...

  7. C++ 短信验证码/通知 - 代码示例

    //接口类型:互亿无线触发短信接口,支持发送验证码短信.订单通知短信等. // ///////////////////账户注册:请通过该地址开通账户http://user.ihuyi.com/regi ...

  8. 【CSS】float

    写在前面的话: 由于CSS内容比较多,小菜没有精力从头到尾讲一遍,只能有针对性的讲解. 如果读者理解CSS盒子模型,但对于浮动不理解,那么这篇文章可以帮助你. 小菜水平有限,本文仅仅是入门教程,不当之 ...

  9. redis和redis php扩展安装

    redis的源码安装 wget http://download.redis.io/redis-stable.tar.gz tar -zxvf redis-stable.tar.gz cd redis- ...

  10. JTable更新内容的方法

    JTable更新内容的方法 DefaultTableModel dtm=new DefaultTableModel(data,head);//定义表格模型 jt.setModel(dtm);或jt=n ...