国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > web前端 > jscript > Javascript实现不同编码之间的URL提交

Javascript实现不同编码之间的URL提交

来源:程序员人生   发布时间:2014-03-18 10:27:34 阅读次数:3779次

不同的网站之间提交参数的时候。比如A网站是UTF-8编码,向liehuo.net (GBK) 提交一个链接
http://s.liehuo.net/?q=杯具&sp=on 这样会存在转码的问题。 提供一个函数。将 http://s.liehuo.net/?q=1&a=2&b=3&c=4 转换成FORM,再通过更改FORM的accept-charset 来达到自动转码的目的。

代码如下:

//提供一个URL,JS分析创建表单提交
function submitAsForm(requestUri, charset) {
var s = requestUri.split('?'),d = document,div = d.createElement('DIV');
div.innerHTML =
'<form method="GET" action="'+ s[0] +'">' +
s[1].replace(/((w+)=(.*?))(&|$)/gi, function(s,m,n,v){
return '<input type="hidden" name = "'+ n +'" value="'+ /*encodeURIComponent*/(v) +'" />'
}) +
'</form>'
var form = div.firstChild;
form.setAttribute('accept-charset', charset || 'UTF-8');
if (document.all) document.charset = charset;
form.submit();
}

//submitAsForm('http://s.liehuo.net/?a=1&b=2&c=3&d=4', 'GB2312')
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
为码而活
积分:4237
15粉丝
7关注
栏目热点
关闭
程序员人生