当以get方式提交时,你设置过滤器来处理中文乱码的方式会失效; get方式的理解可以简单的理解为url上带的参数,和 form表单中指定get方式的时候,默认为get; 这个时候需要对中文进行编码,这样传输过程工就不会乱码,到后台在解码即可;下面是js中对url的编码 和 java的 解码
搜索页面,传递key的时候,为了防止中文乱码,使用encodeURIComponent编码:
function searchSubmit(){
reg = /[\S]+/;
obj=$("search_word");
if(!obj.value.match(reg)){
alert("请输入搜索的关键词!");
return;
}
location.href="/place/search?id=" + getUrlParam("id") + "&word=" + encodeURIComponent(obj.value);
}
但在后台java代码直接request.getParameter("word")就已经乱码了,还没调用URLDecoder.decode。 找资料发现调用request.getParameter的时候java会自动对word进行一次解码,所以就乱码。既然java会自动对word 进行一次解码,那我们在前台进行2次编码,然后后台 URLDecoder.decode(request.getParameter("word"),"utf-8")就可以解决乱码的问题。 前台代码:
function searchSubmit(){
reg = /[\S]+/;
obj=$("search_word");
if(!obj.value.match(reg)){
alert("请输入搜索的关键词!");
return;
}
location.href="/place/search?id=" + getUrlParam("id") + "&word=" + encodeURIComponent(encodeURIComponent(obj.value));
}
分享到:
相关推荐
解决URL中文乱码的一种方法是使用JavaScript进行编码,然后在服务器端解码。有两种常见策略: - **一次转码**:使用`encodeURI()` 对URL进行编码,然后在服务器端使用适当的解码方法,如Java中的`new String(name...
### get方式传参中文乱码问题的解决方案 在Web开发中,经常遇到GET请求传递中文参数时出现乱码的问题。这种现象通常出现在不同编码格式之间的转换过程中,导致浏览器或者服务器端解析参数时出现问题。本文将深入...
如果你在JavaScript中使用Ajax发送GET请求,确保使用`encodeURIComponent()`函数对包含中文的参数进行编码。这将确保在发送到服务器之前,中文字符被正确地编码。 6. **浏览器兼容性**: 考虑到不同浏览器可能对...
在进行Web开发时,我们经常会遇到Ajax GET请求发送中文参数时出现乱码的问题...在提供的压缩包文件`strtus-ajax-by-get-zh-garbled`中,可能包含了关于Struts框架下解决Ajax GET请求中文乱码的示例代码,可以参考学习。
在处理中文乱码问题时,Gson提供了一种优雅的解决方案。例如,以下代码展示了如何使用Gson将包含中文的Java对象转换为JSON字符串,以及如何从JSON字符串反序列化回对象: ```java import com.google.gson.Gson; ...
本文将深入探讨“Get中文乱码”以及如何在IE浏览器上解决这个问题。 首先,让我们理解为什么会出现GET中文乱码。在HTTP协议中,GET请求的参数是通过URL传递的。当URL包含非ASCII字符(如中文字符)时,如果服务器不...
在本文中,我们将深入探讨如何解决使用Ajax进行POST请求时出现的中文乱码问题。首先,我们要理解Ajax中文乱码的根源,它通常涉及到字符编码的不一致,尤其是在客户端与服务器之间的通信过程中。 Ajax(Asynchronous...
解决IE浏览器GET请求下的中文乱码问题,通常有以下几种方法: 1. **服务器端设置**:确保服务器返回的HTTP响应头中`Content-Type`字段正确设置了字符集,如`Content-Type: text/html; charset=utf-8`。这样,浏览器...
本文将详细阐述GET和POST请求中文乱码的处理方式,以帮助开发者解决这类问题。 首先,我们需要了解为什么会出现中文乱码。在HTTP请求中,数据通常是按照ASCII编码进行传输的,而中文字符通常使用UTF-8或其他多字节...
《解决magicajax0.3.0中的中文乱码问题》 在进行Web开发时,我们经常需要使用Ajax技术来实现页面的异步更新,而MagicAjax作为一款强大的Ajax库,为开发者提供了便捷的接口和丰富的功能。然而,在处理中文字符时,...
### Ajax中文乱码问题解决方案 在进行Ajax编程时,经常会出现中文乱码的问题,这主要是因为客户端和服务端之间编码设置不一致导致的。为了解决这个问题,我们需要从多个角度出发来确保数据传输过程中字符编码的一致...
### 解决JSP中文乱码问题 在JSP(web应用的一种技术)开发过程中,中文乱码问题是开发者常常遇到的问题之一,特别是在处理用户提交的数据时。本文将详细介绍如何解决JSP中中文乱码的问题,包括页面传递中文参数时可能...
3. **JavaScript处理不当**:在使用JavaScript处理中文字符串时,如果没有进行正确的转义或编码处理,也容易导致乱码。 #### 四、解决方法 针对上述原因,我们可以采取以下几种解决策略: 1. **统一字符编码**: ...
在IT行业中,网络通信是不可或缺的一部分,而URL编码、GET和POST提交以及乱码问题则是开发者经常遇到的技术挑战。本文将深入探讨这些知识点,并提供相应的解决方案。 首先,URL编码是因URL(统一资源定位符)中不能...
本文主要讨论的是JSP中URL中中文参数导致的乱码问题及其解决方案。 首先,让我们深入理解HTTP请求的基本原理。HTTP请求有两种主要的数据提交方式:GET和POST。在GET请求中,表单数据会被附加到URL后面作为查询参数...
如果数据包含中文或其他非ASCII字符,使用`encodeURIComponent()`函数进行URL编码,避免在传输过程中出现乱码。 ```javascript let data = { username: "张三", message: "你好,世界!" }; let encodedData = ...
本文将针对标题和描述中提到的Ajax中文乱码问题,提供几种常见的解决办法。 1. **设置Content-Type头部** 当使用Ajax发送请求时,数据默认被编码为Unicode格式。若服务器期望的数据编码为其他格式(如GBK或GB2312...
6. **数据处理**:在发送数据前,可以使用JQuery的`encodeURI()`或`encodeURIComponent()`函数对中文字符进行编码,防止传输过程中出现乱码。接收数据后,确保解码过程正确。 7. **清理缓存**:有时候,浏览器的...
1. **URL编码**:在发送GET请求前,应该使用JavaScript的`encodeURIComponent()`函数对包含中文的参数进行URL编码,这样可以确保中文字符在URL中以正确的格式传递。 2. **服务器端解码**:服务器端接收到带有编码的...