我想用處理程序(c#)使用jquery ajax上傳文件。問題是,當我打電話的處理程序,我得到使用jquery和處理程序上傳文件(ashx)
context.Request.File.Count=0
下面是ASPX代碼:
<!--aspx file code-->
<script language="javascript" type="text/javascript">
$().ready(function()
{
$('#save').click(function (e)
{
CalluploaderHandler();
});
});
function CalluploaderHandler()
{
$.ajax({
type: "POST",
url: "Services/UPloader.ashx",
contentType: "application/json; charset=utf-8",
success: OnComplete,
error: OnFail
});
return false;
}
function OnComplete(result)
{
alert('Success');
}
function OnFail(result)
{
alert('Request failed');
}
</script>
</head>
<body>
<form enctype="multipart/form-data">
<label for="file">
Filename:</label>
<input name="file" id="file" type="file">
<input id="save" name="submit" value="Submit" type="submit">
</form>
</body>
</html>
C#代碼處理:
/* handler*/
public void ProcessRequest(HttpContext context)
{
string savedFileName = "";
foreach (string file in context.Request.Files)
{
HttpPostedFile hpf = context.Request.Files[file] as HttpPostedFile;
if (hpf.ContentLength == 0)
continue;
// savedFileName = context.Server.MapPath(Path.GetFileName(hpf.FileName));
// hpf.SaveAs(savedFileName);
}
context.Response.Write(savedFileName);
}
您是否曾經能夠正常工作? – Adam