我需要将文件上传到服务器并发送GUID值,这两者都是完成操作所必需的。
是否可以使用一个$.ajax
语句发送两者?
这是我使用
上传操作方法的一小部分[HttpPost]
public ActionResult Upload()
{
HttpPostedFileBase file = Request.Files[0];
}
这是我用来将文件发送到服务器的Javascript代码的片段
function upload() {
var formData = new FormData();
var totalFiles = document.getElementById("FileUpload").files.length;
for (var i = 0; i < totalFiles; i++) {
var file = document.getElementById("FileUpload").files[i];
formData.append("FileUpload", file);
}
$.ajax({
type: 'post',
url: '/myController/Upload',
data: formData,
dataType: 'json',
contentType: false,
processData: false,
success: function (response) {
alert('succes!!');
},
error: function (error) {
alert("errror");
}
});
}
此代码运行良好。该文件按预期上传,但现在我需要将GUID
发送到同一个控制器(上传),所以我想知道我是否可以使用相同的$.ajax
语句发送带有该文件的GUID?
答案 0 :(得分:9)
function upload() {
var formData = new FormData();
var totalFiles = document.getElementById("FileUpload").files.length;
for (var i = 0; i < totalFiles; i++) {
var file = document.getElementById("FileUpload").files[i];
formData.append("FileUpload", file);
formData.append("guid", theGuid);
}
$.ajax({
type: 'post',
url: '/myController/Upload',
data: formData,
dataType: 'json',
contentType: false,
processData: false,
success: function (response) {
alert('succes!!');
},
error: function (error) {
alert("errror");
}
});
}
在服务器端:
Request.Form["guid"];
Request.Files["FileUpload"];