以下只做參考

ajax 提交時參數亂碼

自己解決的方式 var url = "<c:url value="/product/download.action?documentPath="/>"+encodeURI(documentPath);

###其他資料

url傳遞中文如果jsp頁面,myeclipse、web.xml中org.springframework.web.filter.CharacterEncodingFilter,都是UTF-8編碼,直接傳中文一般是不會亂碼的,如果再有亂碼,可以用以下的方式試試。目前收集到4中方法,中文傳參一documentPath為例:1.改為form方式提交,不用超鏈接方式提交,用form方式傳參指定不亂碼。2.通過encodeURI(encodeURI(checkText))提交,java代碼中用URLDecoder.decode解碼:<script>function download(documentPath){ var url = "<c:url value="/product/download.action?documentPath="/>"+documentPath; url = encodeURI(encodeURI(url)); window.location.href=url;}</script>java代碼中取中文:String documentPath = (String) request.getParameter("documentPath");documentPath = URLDecoder.decode(documentPath,"utf-8");3.修改tomcat的server.xml中的connector,添加URLEncoding="UTF-8"4.中文從java中傳到jsp再通過url傳到java:java中編碼:URLEncoder.encode(URLEncoder.encode("傳遞的中文","utf-8"));java中解碼碼:URLDecoder.decode(request.getParameter("documentPath"),"utf-8");

推薦閱讀:

查看原文 >>
相關文章