form表单提交get请求,后台接收乱码的解决方案
来源:互联网 发布:drgs分组器软件 编辑:程序博客网 时间:2024/06/11 19:36
form表单提交post请求不会出现乱码,但是提交get请求,在servlet中用request.getParameter的时候就会产生乱码。网上盛传的各种办法都不太可行,除了修改服务器的配置。前辈说,不提倡get提交方式,因为依赖服务器配置。试了一下修改服务器配置的方法,不晓得是我理解错误还是什么,没有起作用。
这个是jquery的submit方法,不用jquery的话,js应该有onsubmit的方法,跟这个是一样的。
我的解决方法是,在form表单要提交的时候,对输入的值进行编码,然后在后台解码。
$('form[name="search"]').submit(function(){var keyWord = $("#q").val();$("#q").val(encodeURIComponent(keyWord));});
这个是jquery的submit方法,不用jquery的话,js应该有onsubmit的方法,跟这个是一样的。
有的情况下需要encodeURIComponent两次,不知道为什么。
后台转码为
//获取关键字String keyWord = request.getParameter("keyWord");keyWord = URLDecoder.decode(keyWord, "utf-8");
这个办法的缺点是在点击提交的瞬间,输入框里面的字被转码,而且URL里面显示的也是转码之后的。用户体验不是很好。
----------------------------------解决浏览器后退之后IE中输入框中乱码问题-----------------------------------------------
点击浏览器的后退按钮,输入框中输入的内容就以乱码的内容展示在了用户面前,这样很不好。最好的方法是把乱码解码为汉字,但是目前没有找到方法。另一种不大好的方法是,清空输入框中的内容,这个很简单,只要在html中加入一行代码就OK了。
<meta name="save" content="history">
- form表单提交get请求,后台接收乱码的解决方案
- form表单中的get和post提交请求的区别
- form表单提交数据get,post请求的区别
- form提交表单 后台乱码问题
- SpringMVC下ajax提交form表单与后台接收
- 页面ajax提交form 表单 以及后台接收
- net接收ajax提交form的表单
- 解决Error:ftl页面通过form提交表单,后台java类接收的值为null
- go语言form表单提交以及后台如何接收并返回做一个简单的解释
- action提交form表单,用于登录请求,servlet接收数据
- ajax提交form表单 后端接收时中文乱码
- Spring MVC接收前台form表单提交数据的乱码问题
- jsp 提交系列化表单到后台servlet接收中文乱码
- 当出现在form表单提交后台出现乱码时!
- form表单提交查询条件汉字到后台乱码解决方法
- 使用get方法提交form表单时出现乱码解决方法
- 使用get方法提交form表单时出现乱码解决方法
- 使用get方法提交form表单时出现乱码解决方法
- 24点计算
- 概念辨析:dBm, dBi, dBd, dB, dBc
- android meta-data
- usb摄像头方案厂商
- NFC bcm2079x驱动学习
- form表单提交get请求,后台接收乱码的解决方案
- 配置MySQL Workbench
- 树形结构实现并查集
- C#中的内存对齐
- J2EE中Servlet操作cookie
- PHP引用,函数引用,对象引用(初学者必看)
- 游戏开发新手入门之DirectX入门
- TranslateAnimation详解
- 递归和分治思想 (上)