Ajax两张表单一起上传

前端之家收集整理的这篇文章主要介绍了Ajax两张表单一起上传前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

现在A表单和B表单,

java
<form id="Aform">
    ······
</form>
<form id="Bform">
    ······
</form>

目的是Ajax上传时合并两张form的数据,再上传;很明显,这应该在JS部分进行操作

java

var formA = $("#Aform").serializeJson();
var formB = $("#Bform").serializeJson();

$.ajax({
    ······
    data:$.extend({},formA,formB),······
});


//form数据转为{name : xx,value : xxx ······}格式
$.fn.serializeJson=function(){ 
    var serializeObj={}; // 目标对象 
    var array=this.serializeArray(); // 转换数组格式 
    // var str=this.serialize(); 
    $(array).each(function(){ // 遍历数组的每个元素 {name : xx,value : xxx} 
            if(serializeObj[this.name]){ // 判断对象中是否已经存在 name,如果存在name 
                  if($.isArray(serializeObj[this.name])){ 
                         serializeObj[this.name].push(this.value); // 追加一个值 hobby : ['音乐','体育'] 
                  }else{ 
                          // 将元素变为 数组 ,hobby : ['音乐','体育'] 
                          serializeObj[this.name]=[serializeObj[this.name],this.value]; 
                  } 
            }else{ 
                    serializeObj[this.name]=this.value; // 如果元素name不存在,添加一个属性 name:value 
            } 
    }); 
    return serializeObj; 
};
原文链接:https://www.f2er.com/ajax/163219.html

猜你在找的Ajax相关文章