日期:2014-05-16  浏览次数:20484 次

(jQuery 插件)封装容器的表单为json对象
下面代码可以把一个页面容器中的表单元素的值封装成一个json对象。
主要流程是获取页面中的表单元素,判断类型,根据类型获取nanme和value
(function($){
$.fn.serializeObject=function(){
           var inputs=$(this).find("input,textarea,select");
           var o = {};
           $.each(inputs,function(i,n){
               switch(n.nodeName.toUpperCase()){
                   case "INPUT":
                       if($(n).is(":checkbox")){
                           if($(n).is(":checked")){
                               o[n.name]=true;
                           }else{
                               o[n.name]=false;
                           }
                       }else if($(n).is(":radio")){
                           if($(n).is(":checked")){
                               o[n.name]=n.value;
                           }
                       }else{
                           o[n.name]=n.value; 
                       }
                           
                       break;
                   case "TEXTAREA":
                       o[n.name]=$(n).text();
                       break;
                   case "SELECT":
                       o[n.name]=n.value;
                       break;
               }
           });
           return o;
       }
})(jQuery);