JavaScript中URL编码函数代码


Posted in Javascript onJanuary 11, 2011

以下是对变量值的URL编码总结 : 建议用encodeURIComponent() , GET 和POST方式都可以发送过去 。

JavaScript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。这几种编码所起的作用各不相同。

escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +

encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '

encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用 escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者 encodeURIComponent。

Javascript 相关文章推荐
重写javascript中window.confirm的行为
Oct 21 Javascript
JQuery中如何传递参数如click(),change()等具体实现
Apr 28 Javascript
JS冒泡事件的快速解决方法
Dec 16 Javascript
使用jQuery动态加载js脚本文件的方法
Apr 03 Javascript
浅谈Javascript线程及定时机制
Jul 02 Javascript
深入理解jQuery 事件处理
Jun 14 Javascript
详谈JS中实现种子随机数及作用
Jul 19 Javascript
详解angularJs指令的3种绑定策略
Apr 13 Javascript
Ext JS 实现建议词模糊动态搜索功能
May 13 Javascript
4个顶级JavaScript高级文本编辑器
Oct 10 Javascript
js实现按钮开关单机下拉菜单效果
Nov 22 Javascript
ant design 日期格式化的实现
Oct 27 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
Jan 11 #Javascript
JS无限树状列表实现代码
Jan 11 #Javascript
jQuery UI的Dialog无法提交问题的解决方法
Jan 11 #Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
Jan 11 #Javascript
Jquery中获取iframe的代码
Jan 11 #Javascript
基于jQuery的message插件实现右下角弹出消息框
Jan 11 #Javascript
基于jquery的cookie的用法
Jan 10 #Javascript
You might like
PHP实现的连贯操作、链式操作实例
2014/07/08 PHP
php中使用gd库实现远程图片下载实例
2015/05/12 PHP
详解PHP实现异步调用的4种方法
2016/03/14 PHP
php 如何禁用eval() 函数实例详解
2016/12/01 PHP
PHP实现随机数字、字母的验证码功能
2018/08/01 PHP
JS 面向对象的5钟写法
2009/07/31 Javascript
javascript forEach通用循环遍历方法
2010/10/11 Javascript
jQuery+PHP+MySQL实现无限级联下拉框效果
2016/02/19 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
AngulerJS学习之按需动态加载文件
2017/02/13 Javascript
微信小程序中吸底按钮适配iPhone X方案
2017/11/29 Javascript
js断点调试心得分享(必看篇)
2017/12/08 Javascript
使用watch监听路由变化和watch监听对象的实例
2018/02/24 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
2019/11/14 Javascript
[44:21]Ti4 循环赛第四日 附加赛NEWBEE vs LGD
2014/07/13 DOTA
[03:11]完美世界DOTA2联赛PWL DAY8集锦
2020/11/09 DOTA
Python中使用dom模块生成XML文件示例
2015/04/05 Python
Python3.6正式版新特性预览
2016/12/15 Python
Python模拟鼠标点击实现方法(将通过实例自动化模拟在360浏览器中自动搜索python)
2017/08/23 Python
Python3 处理JSON的实例详解
2017/10/29 Python
Python数据持久化shelve模块用法分析
2018/06/29 Python
使用Python进行目录的对比方法
2018/11/01 Python
Python中如何导入类示例详解
2019/04/17 Python
python实现比对美团接口返回数据和本地mongo数据是否一致示例
2019/08/09 Python
css3截图_动力节点Java学院整理
2017/07/11 HTML / CSS
CSS3 rgb and rgba(透明色)的使用详解
2020/09/25 HTML / CSS
详解前端HTML5几种存储方式的总结
2016/12/27 HTML / CSS
浅谈HTML5 Web Worker的使用
2018/01/05 HTML / CSS
美国第一个网上卖鞋零售商:OnlineShoes.com
2017/09/24 全球购物
个人评价范文分享
2014/01/11 职场文书
四群教育工作实施方案
2014/03/26 职场文书
学生请假条格式
2014/04/11 职场文书
中学教师师德承诺书
2014/05/23 职场文书
新闻发布会策划方案
2014/06/12 职场文书
银行中层干部培训心得体会
2016/01/11 职场文书