var fd = new FormData();
fd.append("FileData",document.getElementById('upload_file').files);
var xhr = XMLHttpRequest();
//xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.onreadystatechange=mycallback;
xhr.open("POST", url);
xhr.setRequestHeader("X-Requested-With","XMLHttpHequest");
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new Date().getTime());
xhr.send(fd);
不知道这些写是不是对的,但我传不了文到后台去
string sPath = context.Server.MapPath(@"../../UploadFile");
for (int i = 0; i < context.Request.Files.Count;i++ )
{
HttpPostedFile file = context.Request.Files[i];
file.SaveAs(sPath + "\\" + file.FileName);
}
后台调试时文件数总是0
前台调试时感觉 fd.append("FileData",document.getElementById('upload_file').files);
这句话没用添加数据进去一样
ie10 firfox22都是一样的
fd.append("FileData","sdfasd");连传文本都不行
还有一个我选了3个文,想取消其中一个该怎么做啊
15 个解决方案
#1
楼主这个用的是jquery上传插件吗? uploadify
#3
楼上的方法我也试过,但不行
#4
还有问一下这个可以跨域吗?好像是跨域的问题
我用ifream
form action=跨域是没问题的,可以上传文
我用ifream
form action=跨域是没问题的,可以上传文
#5
不支持ie8吗 var formdata = new FormData();
#6
我用的是IE10 firfox22都一样不行
#7
一步步调试下,搞不好是语法问题
#8
我试过一步一步调的,fd.append("FileData","sdfasd");在监视fd的时候总感觉好像没有添加数据时去,好像里面是空的,我也不知道怎么回事,这句话也不报错啊
#9
先用ff调试一下,看看前台有没有传递数据
在百度一下Content-Type=multipart/form-data,设置了这个后不能直接得到文本值得
这个我前段时间做过,要做一些处理
在百度一下Content-Type=multipart/form-data,设置了这个后不能直接得到文本值得
这个我前段时间做过,要做一些处理
#10
FF 和 IE我都调过,FormData这个对像只里有一个方法可用,监视这个变量的时候好像是看不到里面是否添加了数据。Content-Type=multipart/form-data这个是为了传文件,可不管传文件还是字符都不无法获取数据
#11
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new
这句话不能要
传文件只能files[i],一个一个传
HttpPostedFile file = Request.Files["FileData"]这样接收文件
这句话不能要
传文件只能files[i],一个一个传
HttpPostedFile file = Request.Files["FileData"]这样接收文件
#12
formdata在IE里面不兼容
#13
formdata 在ie8,9下有问题,
#14
var fd = new FormData();
fd.append("FileData",document.getElementById('upload_file').files);
var xhr = XMLHttpRequest();
//xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.onreadystatechange=mycallback;
xhr.open("POST", url);
xhr.setRequestHeader("X-Requested-With","XMLHttpHequest");
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new Date().getTime());
xhr.send(fd);
我想知道你的这些代码 写在哪里了? 是控制器里面还是页面里面啊
fd.append("FileData",document.getElementById('upload_file').files);
var xhr = XMLHttpRequest();
//xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.onreadystatechange=mycallback;
xhr.open("POST", url);
xhr.setRequestHeader("X-Requested-With","XMLHttpHequest");
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new Date().getTime());
xhr.send(fd);
我想知道你的这些代码 写在哪里了? 是控制器里面还是页面里面啊
#15
这样写试试:
var fd = new FormData(document.getElementById("upload_file"));
$.ajax({
url: "<c:url value='/test/hello.action'/>",
type: "POST",
data: fd,
processData: false, // 告诉jQuery不要去处理发送的数据
contentType: false, // 告诉jQuery不要去设置Content-Type请求头
success: function (json) {
$.messager.progress('close');
if (json.flag == 'SUCCESS') {
alert("新增成功");
} else {
alert("新增失败:"+json.msg);
}
}
});
var fd = new FormData(document.getElementById("upload_file"));
$.ajax({
url: "<c:url value='/test/hello.action'/>",
type: "POST",
data: fd,
processData: false, // 告诉jQuery不要去处理发送的数据
contentType: false, // 告诉jQuery不要去设置Content-Type请求头
success: function (json) {
$.messager.progress('close');
if (json.flag == 'SUCCESS') {
alert("新增成功");
} else {
alert("新增失败:"+json.msg);
}
}
});
#1
楼主这个用的是jquery上传插件吗? uploadify
#2
#3
楼上的方法我也试过,但不行
#4
还有问一下这个可以跨域吗?好像是跨域的问题
我用ifream
form action=跨域是没问题的,可以上传文
我用ifream
form action=跨域是没问题的,可以上传文
#5
不支持ie8吗 var formdata = new FormData();
#6
我用的是IE10 firfox22都一样不行
#7
一步步调试下,搞不好是语法问题
#8
我试过一步一步调的,fd.append("FileData","sdfasd");在监视fd的时候总感觉好像没有添加数据时去,好像里面是空的,我也不知道怎么回事,这句话也不报错啊
#9
先用ff调试一下,看看前台有没有传递数据
在百度一下Content-Type=multipart/form-data,设置了这个后不能直接得到文本值得
这个我前段时间做过,要做一些处理
在百度一下Content-Type=multipart/form-data,设置了这个后不能直接得到文本值得
这个我前段时间做过,要做一些处理
#10
FF 和 IE我都调过,FormData这个对像只里有一个方法可用,监视这个变量的时候好像是看不到里面是否添加了数据。Content-Type=multipart/form-data这个是为了传文件,可不管传文件还是字符都不无法获取数据
#11
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new
这句话不能要
传文件只能files[i],一个一个传
HttpPostedFile file = Request.Files["FileData"]这样接收文件
这句话不能要
传文件只能files[i],一个一个传
HttpPostedFile file = Request.Files["FileData"]这样接收文件
#12
formdata在IE里面不兼容
#13
formdata 在ie8,9下有问题,
#14
var fd = new FormData();
fd.append("FileData",document.getElementById('upload_file').files);
var xhr = XMLHttpRequest();
//xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.onreadystatechange=mycallback;
xhr.open("POST", url);
xhr.setRequestHeader("X-Requested-With","XMLHttpHequest");
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new Date().getTime());
xhr.send(fd);
我想知道你的这些代码 写在哪里了? 是控制器里面还是页面里面啊
fd.append("FileData",document.getElementById('upload_file').files);
var xhr = XMLHttpRequest();
//xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.onreadystatechange=mycallback;
xhr.open("POST", url);
xhr.setRequestHeader("X-Requested-With","XMLHttpHequest");
xhr.setRequestHeader('Content-Type','multipart/form-data;boundary=---------------------------' + new Date().getTime());
xhr.send(fd);
我想知道你的这些代码 写在哪里了? 是控制器里面还是页面里面啊
#15
这样写试试:
var fd = new FormData(document.getElementById("upload_file"));
$.ajax({
url: "<c:url value='/test/hello.action'/>",
type: "POST",
data: fd,
processData: false, // 告诉jQuery不要去处理发送的数据
contentType: false, // 告诉jQuery不要去设置Content-Type请求头
success: function (json) {
$.messager.progress('close');
if (json.flag == 'SUCCESS') {
alert("新增成功");
} else {
alert("新增失败:"+json.msg);
}
}
});
var fd = new FormData(document.getElementById("upload_file"));
$.ajax({
url: "<c:url value='/test/hello.action'/>",
type: "POST",
data: fd,
processData: false, // 告诉jQuery不要去处理发送的数据
contentType: false, // 告诉jQuery不要去设置Content-Type请求头
success: function (json) {
$.messager.progress('close');
if (json.flag == 'SUCCESS') {
alert("新增成功");
} else {
alert("新增失败:"+json.msg);
}
}
});