0

MVC 中的文件上传路径为空,带有 jquery 对话框

我创建了一个 MVC 应用程序,其中包含两个文件上传,并为此创建了一个 POST 操作,使用 IEnumerable 参数来捕获文件。当我提交表单时,HttpPostedFileBase 集合中的文件正常,但如果文件上传控件在对话框中(弹出 jquery),则 IEnumerable 对象为空。请帮我。

以下是我所做的代码。

看法

 @using (Html.BeginForm("Details", "StudentRegistration", FormMethod.Post, new{ @class = "form ideal-form",enctype = "multipart/form-data"}))
    {
    <div id="divSignatureCapturePopUp" title="Capture Photo" style="display:none; float:left;">
    <input id="fileUploadSignature" type="file"  name ="fileUploadImages" style="width:200px"/>
    </div> 
    }

<input type="button" id="buttonCaptureSignature" name="CaptureSignature" class="ideal-button" value="Capture Signature" />

 <script type="text/javascript">
        $(document).ready(function () {
 $("#buttonCaptureSignature").click(function () {
                $("#divSignatureCapturePopUp").dialog({
                    width: 560,

                });                
            });
}
 </script>

控制器

[HttpPost]
    public ActionResult Details(IEnumerable<HttpPostedFileBase> fileUploadImages)
    {

    }
4

1 回答 1

0

似乎 jqueryui 小部件将文件输入字段移到表单之外。在“网络”选项卡中检查 chrome 开发控制台中发布的数据,并确保文件数据在请求中。

如果这个建议是正确的,你可以这样修改表单:

<div id="divSignatureCapturePopUp" title="Capture Photo" style="display:none; float:left;">
    @using (Html.BeginForm("Details", "StudentRegistration", FormMethod.Post, new{ @class = "form ideal-form",enctype = "multipart/form-data"}))
    {
         <input id="fileUploadSignature" type="file"  name ="fileUploadImages" style="width:200px"/>
         <input type="submit" value="rtwert" />
    }
</div> 

О否则可能以其他方式获取文件:

[HttpPost]
public ActionResult Details()
{
    var files = Request.Files;
}
于 2013-06-25T09:53:02.833 回答