以前ajax不能上传图片 现在有了formdata可以直接ajax上传
代码:
<form action="DinoVoteHelper.ashx?action=upload" enctype="multipart/form-data" method="post" id="form" target="if">
<input style="display: none" id="sfzzm" type="file" name="file1" onchange="javascript:showpic(this,'sfzzmImg');" accept="image/*">
</form>
<iframe id="if" name="if" style="display:none"></iframe>
js:
//上传数据
var formData = new FormData($("#form")[0]);
$.ajax({
url: 'DinoVoteHelper.ashx?action=upload',
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (returndata) {
debugger
alert(returndata);
},
error: function (returndata) {
alert(returndata);
}
});
后台:
if (context.Request.Files.Count > 0)
{
string filename = context.Request.Files[0].FileName;//获取文件名
string[] temp = filename.Split('.');//获取文件后缀
string path = "photo/DinoVote/" + my_model.id + "_" + DateTime.Now.ToString("MMddHHmmss") +"."+ temp[1];
string strPath = Path.Combine(basePath, path);
context.Request.Files[0].SaveAs(strPath);
hd_arti