我想知道是否可以使用 AJAX 同时调用传递参数并通过 POST 上传图像的 PHP 脚本
想象一下这个表格
Insert a title <input id="title" style="width:300px"></input>
Attach an image <input id="immagine" type="file" name="immy" accept="image/*" size="40"/>
标题很容易传递写作
var ajaxReq = new XMLHttpRequest();
var params = "titolo="+$('#title').val()
var url = "registraDati.php";
ajaxReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajaxReq.setRequestHeader("Content-length", params.length);
ajaxReq.setRequestHeader("Connection", "close");
ajaxReq.send(params)
而对于图像是必要的,请使用 FormData。像这样的东西(注意它实际上不起作用):
var file_data = $("#immagine").files[0]; //<----PROBLEM HERE!!
var form_data = new FormData();
form_data.append("afile", file_data)
form_data.append("user_id", 123)
var xhr = new XMLHttpRequest();
xhr.open('POST', 'uploadImmagine.php', true);
xhr.send(form_data);
我可以一次完成这两项操作吗?