jsp页面通过ajax传中文到服务器出现乱码的问题!急!
今天遇到巨诡异的问题,公司的高手也没找到解决办法。望各位出谋划策,小弟不胜感激!!!
我要做这样一个功能:
A客户端【jsp】--访问-->B服务器---->获得服务器的一个FTP文件夹内的图片类型文件的列表---->
把值返回给A客户端---->A客户端从列表中选择一个文件1---->
调用ajax---->把B服务器上的FTP文件夹的文件1拷贝到PUB文件夹内---->
把文件1在PUB文件夹内的服务器B上的相对URL返回给---->A客户端
问题是:我的文件1是中文名字,在调用ajax向服务器传值时,中文都是?号。
公司的高手已经用尽他的方法和网上说的各种方法,依然是问号。
真郁闷!!!
===========================================================================================
这是客户端的js代码
if(document.all.localfile.style.display != "" && document.all.dmsfile.style.display != ""){
//获得服务器文件路径
var serverURL = eval("document.all.<%=acceptobj%>Id2");
var trurServerURL = escape(serverURL.value);
alert("客户端获得的服务器端绝对文件地址:"+trurServerURL);
var url = "/***/chooseimg.ucms?ProcessAction=chooseFileFromFTP&trurServerURL="+trurServerURL+"&acceptobj=<%=acceptobj%>&sCMSSiteId=<%=sCMSSiteId%>";
alert("Ajax用到的action :"+url);
//调用Ajax根据value从服务器拷文件到服务器
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
}else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
if(req){
req.open("POST",url, false);
req.onreadystatechange = complete;
req.send(null);
}
}
function complete(){
if (req.readyState == 4) {
if (req.status == 200) {
var over = req.responseText; //服务器端返回的字符串
alert(over);
document.all.imgcode.value=over;
window.parent.opener.addImg(document.all.imgcode.value);
window.close();
}
}
}
============================================================================================
服务器端代码
System.out.println("获得参数trurServerURL "+hParams.get("trurServerURL"));
……
trurServerURL=unescape(trurServerURL);
=============================================================================================
大家有什么办法解决,或者有什么办法能绕过ajax传中文值,把字符串串到后台。
思路,思路…………请赐予我思路吧………………
各位帮帮忙吧……谢谢大家了!!