在使用window.open(url,..);开启新窗口时传参url没有乱码,当拿到的值却乱码了。
这种情况是由于ie的某些版本浏览器不兼容url传原始中文的模式。
大部分url中的中文都用urf-8转码成了%4E5R%这种模式。这是所有浏览器都可以认识的。
但是也可以直接用www.baidu.com?query=中国。这样的url传参。
但是某部分ie内核不支持。
解决办法是:
传参之前先用
参数1:
var url = encodeURI('select_page_data.action?pageUrls='+ $("#pageUrls").val());
window.open(url,'选择网页', 'alwaysRaised=yes,z-look=yes,screenX........');
参数2:
function sendNigao(tranName){
var url = encodeURI('fawensearchRoles.action?tranName='+ tranName);
var obj = new Object();
obj = window.showModalDialog(url,window,"dialogWidth=500px;dialogHeight=400px");
//this.location = 'fawensearchRoles.action?tranName='+tranName,'','top=120,left=187,height=300,width=500,menubar=no,resizable=yes';
}
这样的话 所有参数都变成标准形式。接下来界面里拿到的参数肯定就对了。