在jsp页面向后台servlet传值时 如图name指为中文时 后台接收到的数据是乱码的 该怎么解决这个乱码问题

在jsp页面向后台servlet传值时 如图name指为中文时 后台接收到的数据是乱码的 该怎么解决这个乱码问题,第1张

在servlet中进行编码就可以了。

requestsetCharacterEncode("utf-8");//或者GBK

String name = requestgetParameter("name");

使用Ajax传递中文参数,如果不对参数进行处理的话,传到后台会变成乱码,经测试可以使用如下方法

这里是以jqueryautocomplete插件中获取输入框中的数据传到后台为例:

注意要对中文使用encodeURI编码两次

复制代码

代码如下:

extraParams:

{q:function(){return

encodeURI(encodeURI($('#keyword')val()))}}

这里同样也要解码两次

复制代码

代码如下:

String

key

=

URLDecoderdecode(URLDecoderdecode(q,"UTF-8"),"tuf-8");

字母的话肯定都不会出现乱码的各种编码都兼容is08859-1 关键是要看你c# 那边是用的什么编码,然后java web就用什么编码进行解码,这样就不会乱码了,感觉你这个情况可能是浏览器编码没有设置对的问题,你看一下你的浏览器的编码是什么。

以上就是关于在jsp页面向后台servlet传值时 如图name指为中文时 后台接收到的数据是乱码的 该怎么解决这个乱码问题全部的内容,包括:在jsp页面向后台servlet传值时 如图name指为中文时 后台接收到的数据是乱码的 该怎么解决这个乱码问题、Ajax传递中文参数到后台乱码的有效解决方法、Java Web后台通过request.getParameter( )方法得到的字符串显示为乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10148195.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存