表单序列化对象,jquery

1.新增jquer方法

     $.fn.serializeObject = function () {
       var o = {};
       var a = this.serializeArray();
       $.each(a, function () {
         if (o[this.name] !== undefined) {
           if (!o[this.name].push) {
             o[this.name] = [o[this.name]];
           }
           o[this.name].push(this.value || '');
         } else {
           o[this.name] = this.value || '';
         }
       });
       return o;
     };

2.表单提交的时候获取值(不刷新)

     $("#form").submit(function (e) {
       var formData = $(this).serializeObject();
       console.log(formData);
       return false;
     })

 3.循环获取值

var form_elme = $$(body).find(form);

var inputs = form_elme.find('input');
var textareas = form_elme.find('textarea');
var dataObj = {};

for(var i = 0; i < inputs.length; i++){
    var input = $$(inputs[i]);
    if(input.attr('name')){
        dataObj[input.attr('name')] = input.val();
    }
}
for(var i = 0; i < textareas.length; i++){
    var textarea = $$(textareas[i]);
    if(textarea.attr('name')){
        dataObj[textarea.attr('name')] = textarea.val();
    }
}
return dataObj;
原文地址:https://www.cnblogs.com/zhizou/p/10818656.html