
===================================================
encodeURIComponent(txt)方法。
试试将url修改为:
url=<%=basePath %>printdomethod=print&pbrid=" + encodeURIComponent(pbrid);
希望对你有用~~~
===================================================
这个我遇到过,你在javascript页面要用两次encodeURI(name)函数,记住一定是2次
var name = “中文”
name=encodeURI(name);
name=encodeURI(name);
在服务器处理页面用
String name=requestgetParameter("name");
String gbk_name=URLDecoderdecode(name,"utf-8");//中文转成utf-8
gbk_name 就是中文的了。
解决中文乱码问题
网页传值主要有两种情况:
1、使用form表单传值
使用form表单传值主要有两种方式:get和post(即:method="get/post",默认是get方式)
1)解决使用post方式传递中文的乱码问题:
方法一:
<formaction="login-handlerjsp"method="post"></form>
在接收请求参数之前设置请求编码即可,requestsetCharacterEncoding("编码");
示例:
<%
requestsetCharacterEncoding("UTF-8");
Stringname=requestgetParameter("name");
Stringpwd=requestgetParameter("pwd");
%>
方法二:
可以写一个Filter过滤该项目下的所有请求编码
webxml文件
<filter>
<filter-name>charsetEncoding</filter-name>
<filter-class>comlymfilterCharsetEncodingFilter</filter-class>
<init-param>
<param-name>code</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>charsetEncoding</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
CharsetEncodingFilterjava文件
publicclassCharsetEncodingFilterimplementsFilter{
privatestaticStringCODE="UTF-8";//默认编码
publicvoiddestroy(){}
publicvoiddoFilter(ServletRequestarg0,ServletResponsearg1,FilterChainarg2)throwsIOException,ServletException{
>
以上就是关于JS传中文参数乱码全部的内容,包括:JS传中文参数乱码、javascript里ajax的XMLHttpRequest.responseText,中文有乱码、如何解决网页传值过程中文乱码问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)