JS及JQuery对Html内容编码,Html转义

话不多说,请看代码:

 /** JQuery Html Encoding、Decoding
* 原理是利用JQuery自带的html()和text()函数可以转义Html字符
* 虚拟一个Div通过赋值和取值来得到想要的Html编码或者解码
*/
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
//Html编码获取Html转义实体
function htmlEncode(value){
 return $('<div/>').text(value).html();
}
//Html解码获取Html实体
function htmlDecode(value){
 return $('<div/>').html(value).text();
}
</script> 
<script type="text/javascript">
//获取Html转义字符
function htmlEncode( html ) {
 return document.createElement( 'a' ).appendChild(
  document.createTextNode( html ) ).parentNode.innerHTML;
};
//获取Html
function htmlDecode( html ) {
 var a = document.createElement( 'a' ); a.innerHTML = html;
 return a.textContent;
};
</script> 
//编码
 function html_encode(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, """);
 s = s.replace(/\n/g, "<br>");
 return s;
 }
 //解码
 function html_decode(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, "\"");
 s = s.replace(/<br>/g, "\n");
 return s;
 } 

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持我们!

(0)

相关推荐

  • 文件编码导致jquery失效的解决方法

    在使用jquery编写图片滚动效果时,发现必须把图片滚动部分放到单独的页面里,然后在首页用<iframe>调用才能正确显示,并且不提示js错误.最后试验无数次,结果发现是jquery所在文件的编码和网页编码不同,全部改为utf-8,正常显示.

  • jQuery简单实现MD5加密的方法

    本文实例讲述了jQuery简单实现MD5加密的方法.分享给大家供大家参考,具体如下: 1.问题背景 有两个输入框,一个输入明文,另一个输入框显示密文 2.实现源码 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>jQuery实现MD5加密</title> <script type="text/javascript"

  • JQuery 绑定事件时传递参数的实现方法

    如题,比如我想在$(":text").bind("keyup",funcionName);将当前的文本框作为参数传递给 functionName所代表的函数,应该怎么写?试了一 下$(":text").bind("keyup",functionName(this));这样是不对的! 1.直接在funcionName 里用 this 就是 对 触发时间的元素本身的引用,如果你需要funcionName有更多参数的话,可以这样用:

  • jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)

    前言: 当jquery ajax在utf-8编码下(页面utf-8,接收utf-8),无任何问题.可以正常post.get,处理页面直接获取正确的内容. 但在以下情况下: GBK -> AJAX POST ->GBK UTF-8 -> AJAX POST ->GBK 后台代码无法获取正确的内容,通常表现为获取到奇怪字符.问号. 经典解决方法: 1:发送页面.接收页面均采用UTF-8编码. 2:发送页面在调用ajax post方法之前,将含有中文内容的input用encodeURIC

  • jQuery MD5加密实现代码

    $(md("你想要加密的字符串")); md5插件下载地址:http://xiazai.jb51.net/201003/yuanma/jquery_md5.rar 下面是我的简单例子 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"

  • jquery ajax 向后台传递数组参数示例

    需求: 在JS中向后台传递数组参数 分析: JS中的数组是弱类型的可以放任何类型(对象.基本类型),但是如果数组中放的是对象类型,传递到后台是显示的只能是对象字符串--[object Object],原因如下: 在后台接收的时候,只能用request来接收,request.getParameterValues()方法返回的是一个String[],所以,应该是在前台传输的时候调用了对象的toString()方法,那么如果依然想传递对象怎么办?凉拌! 但是可以使用JSON字符串来实现,在后台把JSO

  • jQuery on方法传递参数示例

    教你如何给 jQuery on方法绑定的函数传递参数,代码如下: 复制代码 代码如下: $(".loadingFlower").on("click",'',{name:"123",id:"234",tel:"345"},callback)   function callback(event){    console.log(event.data.name);    //参数1 =>123    con

  • php+jquery编码方面的一些心得(utf-8 gb2312)

    php 文件应存为ANSI,要改编码时可用代码调. 复制代码 代码如下: //编码为gb2312,目前大部分网页还是用gb2312,少部分用utf-8, //www.baidu.com竟然两个都用,所以读取baidu的网页怎么搞都没问题 header('Content-Type: text/html; charset=gb2312'); //编码为utf-8 header('Content-Type: text/html; charset=gb2312'); //编码xml为utf-8,不过好像

  • jquery post方式传递多个参数值后台以数组的方式进行接收

    在用jquery的post方式传递多个值时,在后台页面可以用数组形式接收 如下所示 复制代码 代码如下: <script type="text/javascript"> $(function () { timestamp = 0; $("#chatform").submit(function () { var message = $("#msg").val(); var name = $("#author").va

  • jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】

    本文实例讲述了jQuery+C#实现参数RSA加密传输功能.分享给大家供大家参考,具体如下: 注意: 参数传递的+号处理,在传输时会把+变成空格,不处理后端就报错了. 1.前端代码 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Login</title> <

  • jQuery加密密码到cookie的实现代码

    废话不多说了,直接给大家贴代码了,具体代码如下所示: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <table> <tr> <th>账号:</th> <td><input

随机推荐