是否可以同时传输参数并上传图像?

时间:2013-04-28 11:44:31

标签: javascript ajax forms input

我想知道是否可以调用PHP脚本传递params并使用AJAX同时通过POST上传图像

想象一下这个表格

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);

我可以一举完成两项操作吗?

0 个答案:

没有答案