I have two forms on one html page. Using jQuery, is it possible to have the data from both forms go into the POST data when the first is submitted?
I wrote a function that Merge Two Complexe, cames from different Forms, as:
// Each Object came from serializeArray()
var obj = $('form').serializeArray();
obj = JSON.stringify(obj);
obj = JSON.parse(obj);
// Example
obj1 = [
{ name: 'name1', value: 'value1'},
{ name: 'name2', value: 'value2'},
{ name: 'name3', value: 'value3'}
];
obj2 = [
{ name: 'name4', value: 'value4'},
{ name: 'name2', value: 'value5'},
{ name: 'name1', value: 'value6'}
];
function mergeTwoJsonObj( obj1, obj2 ){
var obj3 = [];
for (var index in obj1) {
obj = {name: obj1[index].name, value: obj1[index].value};
obj3.push(obj);
}
for (var index in obj2) {
obj = {name: obj2[index].name, value: obj2[index].value};
var isExist = false;
var existAt;
for (var j in obj3) {
if( obj3[j].name === obj2[index].name){
isExist = true;
existAt = j;
break;
}
}
if(!isExist) {
obj3.push(obj);
} else {
obj3[j].value = obj2[index].value;
}
}
obj3 = JSON.stringify(obj3);
obj3 = JSON.parse(obj3)
return obj3;
}
For the example obj1, and obj2 it returns:
// Example
obj3 = [
{ name: 'name1', value: 'value6'},
{ name: 'name2', value: 'value5'},
{ name: 'name3', value: 'value3'},
{ name: 'name4', value: 'value4'}
];
I wish it helps