如何通过一个Ajax调用来发布数据形式的数据和其他数据

时间:2018-07-27 10:19:10

标签: php jquery ajax

我不得不通过一个ajax调用传递dataForm数据和其他数据,这让我很震惊,实际上是通过创建DataFrom对象传递Blob数据。以下代码将为您提供确切的解释

我的带有数据的ajax调用

Fr.voice.export(function(blob){
                  var data = new FormData();
                  data.append('file', blob);
                  console.log(blob);

                  $.ajax({
                    url: "upload1.php",
                    type: 'POST',
                    data: data,
                    contentType: false,
                    processData: false,
                    success: function(data) {
                      // Sent to Server
                    }
                  });
                }, "blob");

在上面的Ajax调用中,仅发布blob数据,因为我必须像

那样传递其他数据
id: student_id,
test_no: test_no,
attempt_no: attempt_no,
question_name: "audio" + audioNo.

我尝试过的事情

 Fr.voice.export(function(blob){
                  var data = new FormData();
                  data.append('file', blob);
                  console.log(blob);
                   var postData = {
                "audio": base64,
                "id": student_id,
                "test_no": test_no,
                "attempt_no": attempt_no,
                "question_name": "audio" + audioNo
            };

                  $.ajax({
                    url: "upload1.php",
                    type: 'POST',
                    data: {data,postData},
                    contentType: false,
                    processData: false,
                    success: function(data) {
                      // Sent to Server
                    }
                  });
                }, "blob");

我在发布数据时获取了[object,object]。

php和Ajax调用的新手,请帮助我解决这个问题。预先谢谢你。

1 个答案:

答案 0 :(得分:0)

您是否尝试过这种方法?

 $.ajax({
   url: "upload1.php",
   type: 'POST',
   data: { data: dataVar, postData: postDataVar},
   contentType: false,
   processData: false,
   success: function(data) {
        // Sent to Server
   }
});