function getFyqqList(zczh,zt,type){
var url=baseUrl+"/bankLogic.do?action=getFyqqList";
url+="&zczh="+encodeURI(encodeURI(zczh))+"&zt="+zt+"&type="+type;
window.open(url);
}function fyqq(zczh,zt,type){
var url = baseUrl+"/bankLogic.do?action=getFyqqList";
url+="&zczh="+encodeURI(zczh)+"&zt="+zt+"&type="+type;
 ajaxAnywhere.getAJAX(url, "tj_zone", "true");
}function shxc(zczh,zt,type){
var url = baseUrl+"/bankLogic.do?action=getShQueryList";
url+="&zczh="+zczh+"&zt="+zt+"&type="+type;;
 ajaxAnywhere.getAJAX(url, "tj_zone", "true");
}
getFyqqList(){
 String zczh = (String) this.getParameter("zczh");
zczh = java.net.URLDecoder.decode(zczh,"utf-8");
}getShQueryList(){
String zczh = this.getParameter("zczh") == null ? "" : new String(((String) this.getParameter("zczh")).getBytes("ISO-8859-1"),"UTF-8");
}

解决方案 »

  1.   


    LZ需要在JS中转2次码,然后后台在解码就行了;
    JS代码:
    conditions=encodeURI(conditions);
    conditions=encodeURI(conditions);//必须要转码2次
    Action代码:
    String adname=URLDecoder.decode(schedule.getAdname(),"UTF-8");
    即可!
      

  2.   

    因为Tomcat服务器会自动帮你做一次URLDecode,所以再加上你自己在代码里面写的URLDecode,一共就是两个Decode了,既然要两次Decode,当然就需要两次Encode了。当然你会问,干脆只Encode一次,然后在java代码里不Decode,不过不好意思,这也是不行的。