`
unika_ly12
  • 浏览: 10391 次
  • 性别: Icon_minigender_1
  • 来自: 匕首岛
社区版块
存档分类
最新评论

JQuery插件应用(二)

阅读更多
今天说说jQuery.Form,jQuery.Form的官方网站是http://jquery.malsup.com/form/
提到jQuery.Form首先得说说Ajax数据传递乱码问题,Ajax数据传递编码为UTF-8,无论你设置了程序级编码还是页面级编码,Jquery都会使用UTF-8的编码方式传递过去,如果你采用GBK,GB2312方式会。简单起见需要从JQuery源码着手。

1、jQuery 1.2.6 乱码解决办法
论坛里可以找到http://www.iteye.com/topic/339793,具体如下:
 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, "+");
    }

2、jQuery 1.3.2 乱码解决办法
param: function( a ) {
	var s = [ ];
 
	function add( key, value ){
		s[ s.length ] = encodeURIComponent(key) + '=' + encodeURIComponent(encodeURIComponent(value));
};

修改完后再程序里,比如struts的action里用java.net.URLDecoder.decode(param, "UTF-8");进行转码。

书归正传,上一段jquery.form代码:
<s:form id="searchForm" theme="simple" action="monitorItemListView" namespace="/monitorinfo">
	名称:<s:textfield name="monItemsName" />
	<s:submit value="提交" /></label>
</s:form>

$(document).ready(function() { 
  		var options = { 
  	        success : function(msg){
				//alert(msg);
				$("#item_list").html(msg);
      	    },  // post-submit callback 
  	        type : "post",        // 'get' or 'post', override for form's 'method' attribute 
  	        resetForm: true        
  	        //timeout:   3000 
  	    }; 
  	 
  	    // bind form using 'ajaxForm' 
  	    $('#searchForm').ajaxForm(options); 
  	}); 

代码非常简单,一看就明白了,有啥米问题可以留言讨论。最后奉上修改后的支持GBK的jquery和Jquery混淆工具。
分享到:
评论

相关推荐

    jQuery插件flexBox的应用Ⅱ

    jQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用ⅡjQuery插件flexBox的应用Ⅱ

    jQuery插件flexbox的应用程序

    jQuery插件flexbox的应用程序jQuery插件flexbox的应用程序jQuery插件flexbox的应用程序jQuery插件flexbox的应用程序jQuery插件flexbox的应用程序

    JQuery插件应用

    JQuery插件应用JQuery插件应用JQuery插件应用

    计算机应用技术jQuery插件应用.pptx

    计算机应用技术jQuery插件应用.pptx

    jquery 插件开发

    jquery 插件开发详解通过$.extend()来扩展jQuery 通过$.fn 向jQuery添加新的方法 通过$.widget()应用jQuery UI的部件工厂方式创建

    浅析JQuery框架及其插件应用

    浅析JQuery框架及其插件应用,欢迎交流。

    50多个强大的jQuery插件应用实例.doc

    jquery是近段时间里比较流行的一个javascript框架,不断有使用者开发出新的 jQuery插件。下面收集了50个开发者最喜欢使用的jQuery插件。这仅仅是第一个系列,你先品尝,第二道大餐即将到来。

    jquery插件使用方法大全

    plugin历史版本1、新的事件.on() .off()3、动画的改进1.42版介绍JQuery插件让Dreamweaver支持提示代码功能引入JQuery展开编辑本段简介  jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多javascript...

    炫酷实用的HTML5应用和jQuery插件

    又开始了新的一周,我们也将继续为大家分享许多优秀的HTML5应用和jQuery插件,作为前端开发者来说,这些资源可以帮助你在项目开发上派上用场。下面一起来看看这些炫酷而实用的HTML5应用和jQuery插件吧。 1、jQuery/...

    JQuery史上最全插件应用及实例

    JQuery史上最全插件应用及实例 Web前端最优秀的前端页面UI组件

    JQuery插件-JQuery的几个精典应用实例

    JQuery的几个精典应用实例,包含菜单的设计,文件上传,树型结构,验证,滑动效果等,绝对经典,绝对有用。

    jquery插件

    jquery的插件为html5提供支持,可以应用在许多不同的方面,比如视频的播放,音频的播放等等

    应用jquery插件jPaginate的一个分页例子

    应用jquery插件jPaginate的一个分页例子。

    jQuery 的Ajax应用 操作表格 插件

    jQuery 的Ajax应用 jQuery操作表格 jQuery插件

    超赞 值得一试的jQuery插件和CSS3应用

    jQuery和CSS3相结合往往能制作出令人意想不到的网页应用,比如可以给平淡无光...这款jQuery图表插件应用比较广泛,兼容所有浏览器。 在线演示 源码下载 3、jQuery UI滑杆插件 可Tooltip提示 今天[......] 阅读全文&gt;&gt;

    JQUERY插件的应用

    关于JQUERY的插件,一件功能的实现,比如钢琴下拉效果,漂亮的横向菜单等

    15款jQuery Mobile插件

    jQuery Mobile移动应用实战赠送15款jQuery Mobile插件

    jQuery导航插件Slidebars.zip

    Slidebars 是一款能快速又简单的实现移动端应用风格菜单显示和侧边栏的 jQuery 插件。 标签:Slidebars

    可对列表自由拖拽排序的jQuery插件.zip

    dragslot.js是一款可以对列表自由拖拽排序的jQuery插件。该插件主要的功能是实现了列表项可以在各个列表中相互拖拽. 对于像todo list, 分配任务列表都可以应用这个效果。

    select 无限级联 Jquery 插件

    网页应用中,多个select之间级联刷新是很常见的一个需求,本插件充份运用jquery强大的脚本功能,并运用json实现数据交互,实现了select无限级联的功能,接口调用简洁,刷新功能配置灵活,参数强大, 支持select元素...

Global site tag (gtag.js) - Google Analytics