首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在ajax post上发送http正文数据

如何在ajax post上发送http正文数据
EN

Stack Overflow用户
提问于 2016-09-27 16:01:18
回答 1查看 2.2K关注 0票数 1
代码语言:javascript
运行
复制
$(document).delegate('form', 'submit', function(event) {
var $form = $(this);
var id = $form.attr('id');
// ...
  /* stop form from submitting normally */
  event.preventDefault();

//   /* get the action attribute from the <form action=""> element */
   var $form = $(this),
   url = $form.attr( 'action' );    

   var timeId = parseInt(id.substring(11));

   var formData = new FormData($("#"+id)[0]);
   console.log("time id of form is "+timeId);
   console.log(formData);
   $.ajax({
    url: url,
    method: "POST",
    dataType: 'json',
    data: formData,
    processData: false,
    contentType: false,
    success: function(result){},
    error: function(er){}
    });

});

我发送的图像文件从一个html表单使用ajax post。如何将附加数据作为此http post的正文发送?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-27 16:04:29

要从DOM元素传递额外的数据,也可以使用serialize()

代码语言:javascript
运行
复制
$('form#id').serialize();

如果你想得到图像,你应该这样做。

代码语言:javascript
运行
复制
console.log($('#image').get(0).files[0]);

<input type="file" name="file" accept="image/*" id="image">

可以使用每个文件追加多个文件

代码语言:javascript
运行
复制
var data = new FormData();
$.each($('#image')[0].files, function(i, file) {
    data.append('file-'+i, file);
});

在formData中传递加法数据

代码语言:javascript
运行
复制
data.append("timeId",10000);

代码语言:javascript
运行
复制
//Program a custom submit function for the form
$("form#test").submit(function(event){
  //disable the default form submission
  event.preventDefault();
  //Other data
  console.log($(this).serialize());
  //File data
  console.log($('#image').get(0).files);
});
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form enctype="multipart/form-data" id="test" method="post">
  <input type="text" name="firstname">
  <input type="text" name="lastname">
  <input type="hidden" name="id" value="10">
  
  <input type="file" name="file" id="image">
  <input type="submit">
</form>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39719269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档