页面代码:
@using (Html.BeginForm("UploadFile", "ReviewObject", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<script language="Javascript" type="text/javascript">
function PostUploadFile() {
//document.forms[0].enctype = "multipart/form-data";
//document.forms[0].action = "../UploadFile";
//debugger;
document.forms[0].submit(); // 通过脚本提交表单
}
</script>
<input type="file" id="path" name="path" />
<input type="submit" id="upload" name="upload" value="upload1" onclick="PostUploadFile()" />
}
服务端代码:
public ActionResult UploadFile()
{
int fileCount = Request.Files.Count; // 这里文件个数总是为0????
return Edit(1);
}
当我通过上面的代码执行时,服务端的文件个数总是为0,
但是当我把页面代码改成如下时(不通过脚本提交),就一切正常,请问为什么??如果一定要通过脚本提交,有什么解决办法?
@using (Html.BeginForm("UploadFile", "ReviewObject", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<input type="file" id="path" name="path" />
<input type="submit" id="upload" name="upload" value="upload1" />
}