-
jquery formValidator3.1 ajaxValidator中文乱码5
$("#account").formValidator({tipid:"accountTip",onfocus:"4-20个字符",oncorrect:"输入正确."}).inputValidator({min:4,max:20,onerror:"你输入的用户名非法,请确认"})
.ajaxValidator({
type : "get",
url : "<%=path%>/checkUnique_myStageUser.action",
data:"account:"+$("#account").val(),
datatype : "json",
onwait : "正在对用户名进行合法性校验,请稍候...",
error: function(){alert("服务器没有返回数据,可能服务器忙,请重试");},
onerror : "该用户名不可用,请更换用户名",
success : function(data){
if(data==1)return true;
else{
$("#account").val("");
$("#account").focus();
return false;
}
}
});
data:"account:"+$("#account").val(), 如果这里是中文字符则在后台action里得到的是乱码
若data:"account:"+encodeURIComponent($("#account").val())
或data:"account:"+encodeURI(encodeURI($("#account").val()))
后台action中java.net.URLDecoder.decode(account,"UTF-8")仍为乱码
说明:jsp页面为UTF-8编码 action类的编码格式也为"UTF-8"
问题补充:
试过的 不行的
问题补充:
呵呵 刚才就试过了的 不行咯
问题补充:
提交前alert($("#account").val());是正确的 没有乱码现象
在用到的formValidator.js中作者将值用encodeURIComponent()封装了一下
但我在后台使用java.net.URLDecoder.decode(account,"UTF-8")仍为乱码
郁闷之极了
问题补充:
换成GBK也试了 也没效果不知道该怎么办了
问题补充:
没有用到过滤器
前台打印alert($("#account").val());是正确的 没有乱码现象
后台打印原始account数据为 ?????
该如何处理
问题补充:
我用的是tomcat
打印出ISO-8859-1也是?????
问题补充:
tomcat的配置我没动过的
真可惜真的一个也不行啊 不知道怎么搞的
有电话没 留个 我打过去
问题补充:
我的问题解决了 没有网上给出的答案那么复杂
不用修改tomcat的URIEncoding
只要保持前台和后台的编码一致最好是UTF-8
我修改了formValidator.js
var parm = "clientid="+id+"&"+id+"="+encodeURI(encodeURI(srcjo.val()));
使用encodeURI两次,后台采用java.net.URLDecoder.decode(account,"UTF-8")即可解码还原中文了
谢谢关注,谢谢bohemia
问题补充:
呵呵 zhudp.cn 我问题解决了
response.setContentType("text/xml;charset=utf-8")是设置返回数据的编码的
我的是提交到action里时是乱码
通常ajax提交时页面采用utf-8后台采用utf-8编码也会出现后台接收时有乱码问题
我的解决方案是:在视图层提交时采用encodeURI两次编码,记住一定是两次
后台解码:java.net.URLDecoder.decode(account,"UTF-8")即可解码还原中文
问题补充:
web.xml设置filter 编码为UTF-8也是不行的
ajax理论也是采用UTF-8编码的但是还是会出现乱码的,我一直采用上面的方案解决.
现在我一般采用jquery对ajax采用了很好的封装,代码的可维护度不会出现什么问题.
2008年11月18日 13:50
11个答案 按时间排序 按投票排序
-
哦,是我没看清楚,是提交乱码,
不过,你不能总是,提交前设置一下,后台又设置一下,
代码维护和效率方面都有影响,在web.xml里把filter设置一下,轻松很多,
之所以用utf8就是为了避免ajax的中文乱码,如果你总是“一次提交,两次设置”,代码的可维护度将降低2008年12月02日 00:06
-
估计是你的response的字符集错了,
response.getCharacterEncoding()出来看一下,
如果不是utf-8那就会乱码了,设置:
response.setContentType("text/xml;charset=utf-8")
前后台都是utf-8,没必要使用escape,影响效率!2008年12月01日 14:40
-
URIEncoding="GBK" 这个你没做配置的吧?
那可以试试各个编码了.
ISO
GBK
UTF-8;
都试了? 都不行? 呵呵.
呵呵.看来情况麻烦点; 你直接Form提交一个字段或者GET提交一个,看看编码和你后台是否能一致; 这样也许调试能看得出来.2008年11月19日 08:35
-
不是吧? 你的Tomcat没进行过转码吧?
URIEncoding="GBK" 这个你没做配置的吧?
那可以试试各个编码了.
ISO
GBK
UTF-8;
总有可以的吧?
2008年11月18日 18:10
-
转码问题啊; 估计你有几个步骤是转过编码的吧?
这个要你自己检查看哪个代码进行过转码了?
你用Tomcat? WLS? 根据ISO,UTF-8都解析一下看看.2008年11月18日 16:23
-
/checkUnique_myStageUser.action
你的Action,添加过滤器了么?
把原始的数据打印出来,看看你是否做过转码了? 只要客户端和服务器端一致; 就说明没其他干扰.也就容易解决了.
js客户端,先Alert提交数据;
然后服务器,Debug下,看看是否一致;2008年11月18日 15:56
相关推荐
《jQuery formValidator3.1详解》 在Web开发中,数据验证是不可或缺的一环,它确保用户输入的数据符合预设的规则,防止错误的数据进入系统。jQuery formValidator3.1是一个强大的JavaScript库,专为jQuery设计,...
**jQuery FormValidator 3.1 插件与日历组件详解** 在Web开发中,表单验证和日期选择是常见的需求。jQuery FormValidator 3.1 是一个强大的表单验证插件,它提供了丰富的验证规则和自定义设置,使得前端数据验证变...
在jQuery formValidator 3.1中,你可以期待以下关键知识点: 1. **安装与引入**:首先,你需要将jQuery库和formValidator的js文件引入到HTML页面中,通常放置在`<head>`标签内,确保jQuery在formValidator之前加载...
jQuery formValidator是一款强大的JavaScript表单验证插件,它基于jQuery库,用于在用户提交表单前验证输入数据的正确性和格式。这个插件提供了一系列灵活的验证规则和自定义选项,使得开发者能够轻松地实现复杂的...
基于jquery框架,采用jQuery formValidator表单验证插件。
《JQuery FormValidator 4.1.1:前端验证利器详解》 JQuery FormValidator 4.1.1是一款强大的JavaScript库,专为前端表单验证而设计。它结合了jQuery的强大功能,使得开发者能够轻松地对用户输入的数据进行实时验证...
jQuery formValidator是一款基于jQuery库的高效、灵活的表单验证插件,旨在帮助开发者轻松实现对用户输入数据的实时验证,提高用户体验并确保数据的准确性和完整性。它提供了丰富的验证规则,可以覆盖大部分常见的...
这是一个包含了formValidator3.1版本的资源文件,其中可能包含以下内容:库文件(如jquery.formValidator.js)、样式表(如formValidator.css)、示例代码、文档等。解压后,开发者可以直接在项目中引用这些文件,...
**jQuery formValidator表单验证插件** jQuery formValidator是一款高效且功能丰富的JavaScript验证插件,专为基于jQuery的Web应用程序设计。它简化了表单验证的过程,提供了多种预定义的验证规则,以及自定义验证...
jQuery formValidator是一款强大的JavaScript表单验证插件,它基于jQuery库构建,旨在简化网页表单的数据验证过程,提供用户友好的交互体验。该插件通过自定义规则和错误消息,可以轻松实现各种复杂的验证需求,使得...
`jQuery FormValidator`是一款基于jQuery库的前端表单验证插件,它为开发者提供了一种简单而强大的方式来实现表单验证。这个插件在Web开发领域中颇受欢迎,因为它可以方便地添加验证规则,避免用户提交无效或不完整...
jQuery formValidator是一款基于jQuery的轻量级表单验证插件,其主要特点是易于使用、灵活性高和丰富的验证规则。它通过CSS类和JavaScript事件来实现表单元素的验证,支持多种验证模式,包括实时验证、提交时验证等...
jQuery formValidator是一款强大的JavaScript表单验证插件,它与jQuery 1.3.2库兼容,使得在网页中实现高效且美观的表单验证变得轻而易举。这个3.5a版本的发布旨在提供更加稳定和功能丰富的验证解决方案,以满足...
jQuery formValidator是一款强大的前端验证插件,它可以帮助开发者实现复杂的表单验证功能,轻松处理前端输入数据的状态判断。本文将深入探讨jQuery formValidator的核心概念、使用方法以及高级特性。 **jQuery ...
**jQuery FormValidator 公共验证框架详解** 在Web开发中,数据验证是不可或缺的一部分,它确保用户输入的数据符合预设的规则,从而提高应用程序的安全性和用户体验。jQuery FormValidator是一款强大的验证框架,它...
jQuery formValidator表单验证插件4.1.1功能说明, 1、支持换肤(目前自带4套皮肤,其中包括58网、网易邮箱注册两套皮肤,当前演示的是网易126的皮肤) 2、支持密码强度校验 3、支持固定提示层 4、支持输入框内值...
### jQuery formValidator 3.3 表单验证插件详细解析 #### 一、概述 jQuery formValidator 3.3 是一款基于 jQuery 的强大表单验证插件,它旨在简化前端表单验证的过程,实现 JavaScript 脚本与 HTML 页面代码的...
**jQuery FormValidator 3.3:打造高效便捷的表单验证体验** `jQuery FormValidator 3.3` 是一个强大的JavaScript验证框架,专为简化和增强网页中的表单验证而设计。它基于流行的jQuery库,提供了丰富的功能和高度...
《jQuery formValidator表单验证插件深度解析及应用实践》 在Web开发中,表单验证是不可或缺的一环,它确保用户输入的数据符合预设的规则,从而避免因无效数据导致的问题。jQuery formValidator插件是一款强大的...