ASP.NET MVC Ajax.BeginForm文件上传不是不引人注目的

时间:2016-03-30 13:30:04

标签: jquery ajax asp.net-mvc file-upload unobtrusive-ajax

我的视图中有以下内容

<div name="image-upload-section" class="control-label">
  @using (Ajax.BeginForm("UploadAdditionalImage", "Image", "UploadAdditionalImage", ajaxOptions, new { enctype = "multipart/form-data" })) {
  <label>Upload Image:</label>
  <input name="files" type="file" id="uploadAdditionalImage" onchange="PreviewAdditional();" />
  <input type="submit" value="Upload Image" class="btn btn-default" />}
  <img id="uploadAdditionalImagePreview" style="max-height:200px;" />
</div>
<div name="imageGallery" id="imageGallery"></div>

<script>
  function PreviewAdditional() {
    var oFReader = new FileReader();
    oFReader.readAsDataURL(document.getElementById("uploadAdditionalImage").files[0]);

    oFReader.onload = function(oFREvent) {
      document.getElementById("uploadAdditionalImagePreview").src = oFREvent.target.result;
    };
  }
</script>

当我包括:

<script type="text/javascript" src="/Scripts/jquery.unobtrusive-ajax.js"></script>

我的控制器接收文件为空,但没有不显眼的-ajax它工作正常,因为你会猜到它返回一个突兀的局部视图。

我在AjaxOptions中尝试过OnSuccess和Update,但它们似乎没有用。

这有什么变通方法吗?由于缺乏jQuery和JavaScript的经验,我可能错过了一些东西。

我在一个视图上有两个表单,上面的表单应该上传文件并返回一个列表对象(URL,Id等)。

0 个答案:

没有答案