1

我的视图中有以下内容

<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>

我的控制器将文件接收为 null,但如果没有 unobtrusive-ajax,它可以正常工作,因为您已经猜到它会返回一个突兀的局部视图。

我在 AjaxOptions 中尝试过 OnSuccess 和 Update,但它们似乎不起作用。

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

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

4

0 回答 0