2012-05-14 49 views
3

我想ajaxlly上传,包括我想用它添加后的数据使用XMLHttpRequest来发送数据

var xhr = this._xhrs[id] = new XMLHttpRequest(); 
var queryString = qq.obj2url(params, this._options.action); 
     xhr.open("POST", queryString, true); 
     xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"); 
     xhr.setRequestHeader("X-File-Name", encodeURIComponent(name)); 
     xhr.setRequestHeader("Content-Type", "application/octet-stream"); 
     xhr.send(file); 

我如何添加x=y作为后数据的文件的文件?

回答

3

无法发布文件表格数据为x = y & w = z。 它们是两种不同的内容类型。

对于X = Y,你应该使用的内容类型是这样的:应用程序/ x-WWW窗体-urlencoded

我建议你在两个不同的分割你的AJAX请求,或者将这些数据插入到网址: myUrl +'query.php?x = y'。

威尔克

1
var file = $("#file_input")[0].files[0]; 

var formData = new FormData(); 
formData.append("myfile", file); 
formData.append("text_unput", "Hello"); 

var xhr = new XMLHttpRequest(); 
xhr.open('POST', '/url', true); 
xhr.send(formData); 
相关问题