哎,还是老话题,一直缠绕着国人……
现在来个快刀斩乱麻,let’s go
由于项目前期使用的是1.2.6版本,后期使用的是1.3.2版本,所以分开来讲;
说说实现的办法,有点暴力——直接修改jQury源码,不过不用担心,不会影响整体功能而且就修改几行代码就可以解决乱码,也就是在发送请求的时候把参数值再进行一次转码,修改的方法为param
1、jQuery 1.2.6 乱码解决办法
- 打开1.2.6版本的源文件
- 找到第2911、2921、2924行,分别修改对应参数值的地方包裹一层encodeURIComponent即可,修改后的结果如下:
param: function( a ) {
var s = [];
// If an array was passed in, assume that it is an array
// of form elements
if ( a.constructor == Array || a.jquery )
// Serialize the form elements
jQuery.each( a, function(){
s.push( encodeURIComponent(this.name) + "=" + encodeURIComponent(encodeURIComponent( this.value )) );
});
// Otherwise, assume that it's an object of key/value pairs
else
// Serialize the key/values
for ( var j in a )
// If the value is an array then the key names need to be repeated
if ( a[j] && a[j].constructor == Array )
jQuery.each( a[j], function(){
s.push( encodeURIComponent(j) + "=" + encodeURIComponent(encodeURIComponent( this )) );
});
else
s.push( encodeURIComponent(j) + "=" + encodeURIComponent(encodeURIComponent( jQuery.isFunction(a[j]) ? a[j]() : a[j] )) );
// Return the resulting serialization
return s.join("&").replace(/%20/g, "+");
}
下载:jquery-encode-gbk.1.2.6.js 共 488 次
下载:jquery-encode-gbk.pack.1.2.6.js 共 404 次
2、jQuery 1.3.2 乱码解决办法
1.3.2的就不用这么麻烦了,因为这个版本简化了param方法的结构,只需要修改一行代码即可,因为只有一个地方转码了
找到第3737行,同样包裹一层encodeURIComponent,结果如下:
param: function( a ) {
var s = [ ];
function add( key, value ){
s[ s.length ] = encodeURIComponent(key) + '=' + encodeURIComponent(encodeURIComponent(value));
};
下载:jquery-encode-gbk-1.3.2.js 共 842 次
下载:jquery-encode-gbk-.pack.1.3.2.js 共 839 次
重要说明:后台必须要转码:java.net.URLDecoder.decode(request.getParameter(“name”), “UTF-8″)
Popularity: 100%
有过管理系统开发经验的程序员第一步肯定是做用户管理模块,当然可能会用到公司或者其他的产品,或者自己写用户管理模块,此模块主要的目的是区别每个用户的信息集合,限制用户的操作、数据列表等
今天讲的是用户登录问题,环境是基于JAVA语言,使用spring代理struts的Action,在使用spring创建的bean时执行一次验证拦截器来判断用户是否登录
下面进入正题:
阅读更多…
Popularity: 4%
用ajax开发系统、网站确实好给客户带来了很大的方便,也降低了服务器的压力,但是我们在开发的时候不能盲目的使用ajax,不是所有的情况都适合使用ajax的,下面是从CSDN上面看到的,分享给大家。
阅读更多…
Popularity: 2%
前天刚刚写的一篇关于《实例解析java + ajax(jQuery) + json工作过程(登录)》的文章引起了网友们的关注和好评,
阅读更多…
Popularity: 93%
自己动手定制ajax 加载等待图片,点击图片打开网址
ajax loading图片定制
Popularity: 5%
本文主要讲解在java环境下使用jQuery进行JSON数据传送的交互过程
参考根据作者的账务管理系统(个人版) 源码下载 讲解
阅读更多…
Popularity: 62%
在开发各种BS架构的系统时表单验证是每个系统、网站都要做的一件事情,在客户端拦截用户的输入、选择是否合法从而降低对服务端的压力也增加用户体验,一般来说都会简单的验证必输项是否为空,或者必选项是否已选择,复杂一点的比如在注册时实时验证用户名是否重复,如此等等
在开发账务管理系统的时候开始想使用自己在公司项目中写的一个验证方法,但是后来想想感觉功能太单调了,虽然能够满足系统的要求但是用户体验不好,所有的错误提示都是使用的alert的方式提示用户,而且没有实时验证的功能,最终放弃了;然后就在jQuery官网插件上搜索关于验证的插件,刚刚说的几个功能都得满足,找了几个最终选择了formValidator,下面是摘自插件官网上的:
阅读更多…
Popularity: 6%
小而强大是我们在系统开发的时候所追求的,用少量代码解决复杂问题这是优秀代码的灵魂;
而我们平常使用的架构、框架正是这种思想的实例化;
阅读更多…
Popularity: 3%