ASP.NET MVC Ajax.BeginForm загрузка файлов не является ненавязчивой
У меня есть следующее в моем представлении
<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, но без ненавязчивого ajax он работает нормально, как вы уже догадались, он возвращает навязчивое частичное представление.
Я пробовал OnSuccess и Update в AjaxOptions, но, похоже, они не работают.
Есть ли обходные пути для этого? Вероятно, я что-то упустил из-за отсутствия опыта работы с jQuery и JavaScript.
У меня есть две формы в одном представлении, и одна из них должна загружать файлы и возвращать список объектов (URL, Id и т. Д.).