日期:2014-05-17  浏览次数:20576 次

关于window.open()的一个奇怪现象,保证你没遇到过!!
我的项目整体都是 utf-8 的编码,用的spring框架,filter中设置的也是 utf-8. post 和 get 方式提交中文都没有问题.

可是我突然发现一个奇怪的现象,具体如下:

JScript code

1.
<a href='test?val=测试'>测试</a>   ---- 到后台无乱码

2.
function() {
 document.location.href='tset?val=测试'   ------  到后台无乱码
}

3.
<a href='tset?val=测试' target='_blank'>测试</a>  ---- 到后台有乱码

4.
function() {
 window.open('tset?val=测试')  ------  到后台有乱码
}



问题:只要是弹出新窗口,就会乱码, 而其他的情况则不会.

按道理说,以上4种都是get方式,前两者不会乱码,而后两者弹出新窗口却会乱码, 

难道他们发送请求的方式不一样吗? 

有没有比较熟悉 http 协议方面知识的人来个解惑????

求大神!!!

------解决方案--------------------
提交新页面需要转码,默认HTTP接收的中文都是ISO8859-1的,不新建窗口,你本页面定制了UTF-8,接收是UTF-8所以没问题。
------解决方案--------------------
探讨

提交新页面需要转码,默认HTTP接收的中文都是ISO8859-1的,不新建窗口,你本页面定制了UTF-8,接收是UTF-8所以没问题。