前些日子,想把中文进行gbk格式的url编码,发现常用的escape、encodeURI、encodeURIComponent方法只能进行utf-8格式的url编码。
后来在网上找到一个方法,可以进行gbk格式的url编码
var asfman = {};
asfman.urlEncode = function(str)
{
window.execScript("Function vbsFun(str):vbsFun=hex(asc(str)):End Function","vbscript");
var gObject={};
return str.replace(/[\x00-\xff]/g,function(a)
{
return a.replace(/[^0-9a-zA-Z]/g,function(b){
if(!gObject[b])
gObject[b]="%"+vbsFun(b);
return gObject[b];
})
}).replace(/[^\x00-\xff]/g,function(c){
return c.replace(/./g,function(d)
{
if(!gObject[d])
gObject[d]= vbsFun(d).replace(/(..)(..)/,"%$1%$2");
return gObject[d];
})
}).replace(/%20/g,"+")
}; alert(asfman.urlEncode('美女'));
调用就用asfman.urlEncode(中文内容)。
本文介绍了一种使用JavaScript实现中文内容的GBK格式URL编码的方法。通常的JavaScript内置函数只能完成UTF-8格式的编码,而本文提供的自定义函数asfman.urlEncode能够针对中文字符进行GBK编码,适用于需要GBK编码格式的场景。

5199

被折叠的 条评论
为什么被折叠?



