js 对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent
1、 传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。
例如:<script language="javascript">document.write('<a href="http://passport.baidu.com/?logout&aid=7& u='+encodeURIComponent("http://cang.baidu.com/bruce42")+'">退出</a& gt;');</script>
2、 进行url跳转时可以整体使用encodeURI
例如:Location.href="/encodeURI"("http://cang.baidu.com/do/s?word=百度&ct=21");
3、 js使用数据时可以使用escape
例如:搜藏中history纪录。
4、 escape对0-255以外的unicode值进行编码时输出%u****格式,其它情况下escape,encodeURI,encodeURIComponent编码结果相同。
最多使用的应为encodeURIComponent,它是将中文、韩文等特殊字符转换成utf-8格式的url编码,所以如果给后台传递参数需要使用encodeURIComponent时需要后台解码对utf-8支持(form中的编码方式和当前页面编码方式相同)
escape不编码字符有69个:*,+,-,.,/,@,_,0-9,a-z,A-Z
encodeURI不编码字符有82个:!,#,$,&,',(,),*,+,,,-,.,/,:,;,=,?,@,_,~,0-9,a-z,A-Z
encodeURIComponent不编码字符有71个:!, ',(,),*,-,.,_,~,0-9,a-z,A-Z
根据说明 我需要的是encodeURIComponent函数
--------------------------------------------------------------------------------------------------------------
据上所述
1、浏览器,表单发的URL是和页面编码一致的
2、浏览器中用XMLHTTP发送的URL是和浏览器默认设置一致的
3、请求 URL 与服务器一致则无乱码出现
分享到:
相关推荐
JS版 UrlEncode 和 UrlDecode 函数
javascript,UrlEncode编码通用类
js以utf-8对中文字符编码有现成的函数,但js 以GBK对中文字符编码却没有,这里就提供给大家,希望对大家有帮助
在网站开发过程中,使用汉字传输会导致有时URL会出现乱码的问题,可通过urlencode对中文进行编码,然后再解码,避免出现乱码,此函数加密的字符串可通过php的urldecode进行解码
自己写的,可能有bug,请大家一块学习 环境为PB12 函数(及参数) 作用 arraysort 对一维数组进行排序 decto 将十进制数字转成其它进制字符串 ...urlencode 将指定字符串以进行指定字符集url编码 涨价了,哈哈
本文用C++来实现UrlEncode!
而相信碰到过此问题的朋友应该都有所了解,目前网络上流行一些js下的自定义函数去解决这个问题,如说vbscript(URLDecode())、javascript(UrlDecode())等。而这两个函数,都无法很好的与asp(Server.Ur
URLEncode 转换编码。
J2ME 实现的 UrlEncode编码 J2ME 实现的 UrlEncode编码 J2ME 实现的 UrlEncode编码
UrlEncode编码转换.zip
C++支持MFC的类,HTTP请求链接转UTF-8 CURLEncode URLEnCode; CString szURL URLEnCode.URLEncode(szURL), .
winform的字符串转换 UrlEncode
urlEncode or urlDecode
Laravel开发-urlencode 允许在路由参数中使用urlencoded斜杠等
base64_encode urlencode 源码,可以根据需求稍作修改便能实现功能
很多朋友说JavaScript的decodeURI函数也可以实现,但有bug所有呢,下面看下下面的函数,经过测试使用暂时没什么问题,我在之前的文章说过,这个和php的urldecode函数根本不是一回事。下面是我根据高人的代码改写的...
UrlEncode解码,对原url码串进行分解,得到Encode后的码串。
用VB发送XMLHTTP请求时,我们经常要用到URLEncode这个函数。下面的两段VB代码分别针对UTF-8(UTF8EncodeURI)和GB2312(GBKEncodeURI)进行了编码的转换
某些C编译器没有包含utf8形式的url编解码函数,这里自己写了一个。 压缩包中包含.h文件,核心的.cpp文件以及编译好的.dll库。... 注意,该动态库使用时,要求目标机上安装有.net framework3.5 对于win7系统而言,可以...