繁体   English   中英

如何ajax()发布多个JSON对象

[英]How to ajax() post more than one JSON object

我目前有一个$.getJSON()调用,它从一个特定的URL获取一个JSON字符串。 简化的代码是这样的,并且可以正常工作:

$.getJSON("myURL",function(data){
    var receivedJSON = data;
});

JSON数据如下所示:

[{"id":1,"name":"jerry"},{"id":2,"name":"tom"}]

现在,在我的程序中,我有一个表来接受用户输入,当用户单击“提交”时,它将进行ajax调用,并将用户输入序列化为json数据,然后传递给后端,简化的html代码如下所示:

<form>
    <table>
        <tbody>
            <tr>
                <td><input type="text"/></td>
                <td><input type="text"/></td>
            </tr>
        </tbody>
    </table>
    <button type="submit">Submit</button>
</form>

处理获取用户输入数据的javascript如下所示:

function() {
var tableObj = $('table tbody tr').map(function(i) {
                                       var row = {};
                                       $(this).find('td').each(function(i){
                                        var rowName = header[i];
                                        row[rowName] =$(this).find("input").val();
                                   });
                return row;
                }).get();

因此, var tableObj包含来自userInput的需要传递到后端的数据,并且该数据正在运行。

处理从表到后端的用户输入数据传递的ajax函数的工作版本如下所示:

$.ajax({
        url : "myPOST_URL",
        type : 'POST',
        data : JSON.stringify(tableObj),
        dataType : "json",
        contentType : 'application/json; charset=utf-8',
 }); //end ajax

现在,我的问题是,如果我不仅想通过.ajax tableObj数据,而且还想包括我从$.getJSON接收到的json数据(在此示例中为: var receivedJSON $.getJSON ),该怎么办?做到这一点?

 $(function(){ $.getJSON("myURL",function(data){ $.post("myPOST_URL",{receivedJSON: data, formData: $("#formular").serializeArray()}); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <form id="formular"> <input type="text" name="field1"> <input type="text" name="field2"> </form> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM