参考链接:https://www.jb51.net/article/152700.htm

请访问以上链接。

本人纯搬迁,防止原作者删除。

<script>

var HtmlUtil = {

    /*1.用浏览器内部转换器实现html转码*/

    htmlEncode:function (html){

      //1.首先动态创建一个容器标签元素,如DIV

      var temp = document.createElement ("div");

      //2.然后将要转换的字符串设置为这个元素的innerText(ie支持)或者textContent(火狐,google支持)

      (temp.textContent != undefined ) ? (temp.textContent = html) : (temp.innerText = html);

      //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了

      var output = temp.innerHTML;

      temp = null;

      return output;

    },

    /*2.用浏览器内部转换器实现html解码*/

    htmlDecode:function (text){

      //1.首先动态创建一个容器标签元素,如DIV

      var temp = document.createElement("div");

      //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)

      temp.innerHTML = text;

      //3.最后返回这个元素的innerText(ie支持)或者textContent(火狐,google支持),即得到经过HTML解码的字符串了。

      var output = temp.innerText || temp.textContent;

      temp = null;

      return output;

    },

    /*3.用正则表达式实现html转码*/

    htmlEncodeByRegExp:function (str){ 

       var s = "";

       if(str.length == 0) return "";

       s = str.replace(/&/g,"&");

       s = s.replace(/</g,"<");

       s = s.replace(/>/g,">");

       s = s.replace(/ /g," ");

       s = s.replace(/\'/g,"'");

       s = s.replace(/\"/g,""");

       return s; 

    },

    /*4.用正则表达式实现html解码*/

    htmlDecodeByRegExp:function (str){ 

       var s = "";

       if(str.length == 0) return "";

       s = str.replace(/&/g,"&");

       s = s.replace(/</g,"<");

       s = s.replace(/>/g,">");

       s = s.replace(/ /g," ");

       s = s.replace(/'/g,"\'");

       s = s.replace(/"/g,"\"");

       return s; 

    }

  };

</script>

javascript实现对html便签等字符的转义的更多相关文章

  1. 使用 JavaScript 实现对 PDF 的全文索引

    Mozilla实验室最近已经收到了许多为一个项目做出的尝试,这一项目的野心令人印象深刻:在一个浏览器中仅仅使用Javascript来对PDF进行渲染.PDF文档的结构令人难以置信的复杂,因此要祝pdf ...

  2. 使用原生JavaScript实现对select增加option标签并附加value属性

    好久没有写原生的东西了,今天写了一个小项目里面包含着option选项,所以我决定使用原生JavaScript动态生成, 本着互联网分享精神,我将本篇文章分享给大家. html代码(就是一个select ...

  3. 【JAVA使用XPath、DOM4J解析XML文件,实现对XML文件的CRUD操作】

    一.简介 1.使用XPath可以快速精确定位指定的节点,以实现对XML文件的CRUD操作. 2.去网上下载一个“XPath帮助文档”,以便于查看语法等详细信息,最好是那种有很多实例的那种. 3.学习X ...

  4. 20151217JS便签

    JS便签: 根据一个数值来改变Repeater行数的颜色 <script type="text/javascript"> var query = document.ge ...

  5. struts2视频学习笔记 22-23(基于XML配置方式实现对action的所有方法及部分方法进行校验)

    课时22 基于XML配置方式实现对action的所有方法进行校验   使用基于XML配置方式实现输入校验时,Action也需要继承ActionSupport,并且提供校验文件,校验文件和action类 ...

  6. 用 Python 脚本实现对 Linux 服务器的监控

    目前 Linux 下有一些使用 Python 语言编写的 Linux 系统监控工具 比如 inotify-sync(文件系统安全监控软件).glances(资源监控工具)在实际工作中,Linux 系统 ...

  7. ios UIWebView截获html并修改便签内容(转载)

    ios UIWebView截获html并修改便签内容 博客分类: iphone开发iphone开发phoneGap uiwebviewstringByEvaluatingJavaScriptFromS ...

  8. c#调用js,以及js调用C#里的函数, c#自己生成js代码,实现对web的控制

    using mshtml;using System;using System.Collections.Generic;using System.Linq;using System.Security.P ...

  9. 【Struts2学习笔记(11)】对action的输入校验和XML配置方式实现对action的全部方法进行输入校验

    在struts2中,我们能够实现对action的全部方法进行校验或者对action的指定方法进行校验. 对于输入校验struts2提供了两种实现方法: 1. 採用手工编写代码实现. 2. 基于XML配 ...

随机推荐

  1. ceph crush算法和crushmap浅析

    1 什么是crushmap crushmap就相当于是ceph集群的一张数据分布地图,crush算法通过该地图可以知道数据应该如何分布:找到数据存放位置从而直接与对应的osd进行数据访问和写入:故障域 ...

  2. mybatis中使用in查询时的注意事项

    1. 当查询的参数只有一个时 findByIds(List<Long> ids)  1.a 如果参数的类型是List, 则在使用时,collection属性要必须指定为 list < ...

  3. C++ Primer Plus 第15章 友元、异常和其它

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/chudaxiakkk/article/details/30502807 第15章 友元.异常和其它 ...

  4. JavaScript-2.内置对象---简单脚本之弹出对话框显示当前时间 ---ShinePans

    <html> <head> <meta http-equiv="content-type" content="text/html; char ...

  5. 理解JVM——类加载机制

    我们在编写Java程序之后,会通过编译器得到一个class文件,这个class文件是如何与JVM进行配合的呢?类中的信息是如何变成JVM可以使用的Java类型呢?这些都是类加载机制做到的. 虚拟机把描 ...

  6. Ubuntu16.04如何彻底删除Apache2

    虽然作为运维人员通常情况不建议随意删除Linux系统上面的任何软件,主要指生产环境下,测试环境也不能太随意. 但是有的时候,比如系统环境要变一变,我们就需要替换一些淘汰的软件,对此我们一般都会删除. ...

  7. 解决JS在url中传递参数时参数包含中文乱码的问题

    1.传参页面JavaScript代码: function go_mark(id,jobname,headimgurl,nickname){ window.location.href = "m ...

  8. 如何将freemarker文件转化为html文件

    最近在做静态的页面报表服务,将前端生成的ftl文件转化为html格式的文件,供后面合成pdf使用. freemarker基础可以参见:freemarker官方文档 前期准备:需要一个基础的ftl格式的 ...

  9. Property Injection in Asp.Net Core (转载)

    问: I am trying to port an asp.net application to asp.net core. I have property injection (using ninj ...

  10. Log4J日志配置与Juit测试

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器).Appenders(输出源)和Layouts(布局). 这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...