Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过jquery对象组合两个表单数据_Jquery_Ajax - Fatal编程技术网

如何通过jquery对象组合两个表单数据

如何通过jquery对象组合两个表单数据,jquery,ajax,Jquery,Ajax,我有两个带有数据的表单,我正在尝试合并这些数据以发送到我的Api。单表单数据正在发送,但我不知道如何合并两个表单中的数据并发送到我的api $(document).ready(function () { $("#place_order").click(function () { var person2 = new Object(); person2.Title = $('#Title').val(); person2.FirstName =

我有两个带有数据的表单,我正在尝试合并这些数据以发送到我的Api。单表单数据正在发送,但我不知道如何合并两个表单中的数据并发送到我的api

$(document).ready(function () {
    $("#place_order").click(function () {
        var person2 = new Object();
        person2.Title = $('#Title').val();
        person2.FirstName = $('#FirstName').val();
        person2.LastName = $('#LastName').val();

        debugger;
        /* #check1 is form id , for first form , please let me know how two use second form id #check2 */
        var person = $('#check1').serialize();

        $.ajax({
            url: 'http://192.168.1.102:1512/qlikapi/RegisterUser',
            type: 'Post',
            data: person,
            success: function(data, textStatus, xhr) {
                alert(data.ErrorMessage);
                if (data.Success) {
                    document.location.reload();  
                }
            },
            error: function (xhr, textStatus, errorThrown) {
                console.log('Error in Operation');
            }
        });
    });
});

合并两个对象的工作方式如下:

var a = {someProp: "hi"};
var b = {someOtherProp: "sup?"};

var merged = $.extend({}, a, b);
//Merged will be
{   someProp: "hi",
    someOtherProp: "'sup?"
}

在成功回调中重新加载页面并不是
$的真正目的。顺便说一下,ajax
调用…

合并两个对象的工作原理如下:

var a = {someProp: "hi"};
var b = {someOtherProp: "sup?"};

var merged = $.extend({}, a, b);
//Merged will be
{   someProp: "hi",
    someOtherProp: "'sup?"
}
$(document).ready(function () {
    $("#place_order").click(function () {
        var person2 = new Object();
        person2.Title = $('#Title').val();
        person2.FirstName = $('#FirstName').val();
        person2.LastName = $('#LastName').val();

        debugger;
        /* #check1 is form id , for first form , please let me know how two use second form id #check2 */
        var person = {};
        var person1 = {};

         $.map($('#check1').serializeArray(), function(n, i){
           person[n['name']] = n['value'];
         });

         $.map($('#check2').serializeArray(), function(n, i){
            person1[n['name']] = n['value'];
         });

        var mergedFormObj = $.extend({},person,person1);

        $.ajax({
            url: 'http://192.168.1.102:1512/qlikapi/RegisterUser',
            type: 'Post',
            data: mergedFormObj,
            success: function(data, textStatus, xhr) {
                alert(data.ErrorMessage);
                if (data.Success) {
                    document.location.reload();  
                }
            },
            error: function (xhr, textStatus, errorThrown) {
                console.log('Error in Operation');
            }
        });
    });
});    
在成功回调中重新加载页面并不是
$调用的真正目的

$(document).ready(function () {
    $("#place_order").click(function () {
        var person2 = new Object();
        person2.Title = $('#Title').val();
        person2.FirstName = $('#FirstName').val();
        person2.LastName = $('#LastName').val();

        debugger;
        /* #check1 is form id , for first form , please let me know how two use second form id #check2 */
        var person = {};
        var person1 = {};

         $.map($('#check1').serializeArray(), function(n, i){
           person[n['name']] = n['value'];
         });

         $.map($('#check2').serializeArray(), function(n, i){
            person1[n['name']] = n['value'];
         });

        var mergedFormObj = $.extend({},person,person1);

        $.ajax({
            url: 'http://192.168.1.102:1512/qlikapi/RegisterUser',
            type: 'Post',
            data: mergedFormObj,
            success: function(data, textStatus, xhr) {
                alert(data.ErrorMessage);
                if (data.Success) {
                    document.location.reload();  
                }
            },
            error: function (xhr, textStatus, errorThrown) {
                console.log('Error in Operation');
            }
        });
    });
});    
确保两个对象属性都是唯一的


确保两个对象属性都是唯一的。

如果您对表单有更具体的要求,请使用

$('#detailsform,#levelForm').serialize();
上面的行将返回一个字符串值。比如
customId=08071992&cort=01&empId=7777

通过向输入字段添加属性
disabled=“disabled”
,可以避免不需要的字段

如果没有第二个表单,可以使用
FormData
创建它


我希望这将对您有所帮助。

如果您对表单有更具体的了解,请使用

$('#detailsform,#levelForm').serialize();
上面的行将返回一个字符串值。比如
customId=08071992&cort=01&empId=7777

通过向输入字段添加属性
disabled=“disabled”
,可以避免不需要的字段

如果没有第二个表单,可以使用
FormData
创建它


我希望这将对您有所帮助。

ashish请让我知道如何使用此线路。请您将此代码与我的代码集成。please@SanjayYadav请检查我是否根据您的要求进行了更新。兄弟,这很好,很棒,我有一个查询,可以从不同的页面获取表单值。不同的页面,一个表单在index.php上运行,另一个在home.php上运行,我可以在home.php上获取这两个表单的值吗?您的代码运行得很好,ashish请让我知道如何使用这条线请你能把这段代码和我的代码整合起来。please@SanjayYadav请检查我是否根据您的要求进行了更新。兄弟,这很好,很棒,我有一个查询,可以从不同的页面获取表单值。不同的页面,一个表单在index.php上运行,另一个在home.php上运行,我可以在home.php上获取这两个表单的值吗?您的代码运行得很好,