jsp传参数乱码

来源:互联网 发布:女人购物软件 编辑:程序博客网 时间:2024/05/21 10:28

由于特殊原因,要通过js向servlet发送请求 。可是中文出现了乱码。以前都是写到超链接里边SystemmenuLinkServlet?tag=1&menu=<%=java.net.URLEncoder.encode("时限","UTF-8") %>  在后台直接request.getParameter("") 就可以得到了。 这次必须通过js来传递参数了  浪费我不少时间 在网上找到这样的方法: var v=escape(encodeURIComponent(ch));现将参数编码 在后台程序中 用URLDecoder.decode(arg, "utf-8");就可以得到正确的中文参数了。

     js中 escape()方法:该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。其他所有的字符都会被转义序列替换

  encodeURIComponent() 函数可把字符串作为 URI 组件进行编码 

该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。

其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的