Я пробую почтовый файл ajax с моделью для контроллера. Используется плагин Jquery Form. Публикация файла с моделью не вызывает проблем, но форма всегда публикуется 2 раза, и по этой причине мои данные всегда заменяются. Как это исправить?
Коды здесь:
<script>
(function() {
var bar = $('.progress-bar');
var percent = $('.progress-bar');
var status = $('#status');
$('form').ajaxForm({
beforeSend: function() {
status.empty();
var percentVal = '0%';
bar.width(percentVal)
percent.html(percentVal);
},
uploadProgress: function(event, position, total, percentComplete) {
var percentVal = percentComplete + '%';
bar.width(percentVal)
percent.html(percentVal);
},
success: function() {
var percentVal = '100%';
bar.width(percentVal)
percent.html(percentVal);
},
complete: function(xhr) {
status.html(xhr.responseText);
}
});
})();
</script>
@Using (Ajax.BeginForm("AddNewProductToGroup", "Admin", New AjaxOptions With {.HttpMethod = FormMethod.Post,
.InsertionMode = InsertionMode.Replace,
.UpdateTargetId = "productslist",
.OnSuccess = "OpenNewProduct"},New With{.enctype = "multipart/form-data"}))
@Html.AntiForgeryToken()
<div class="form-group">
<label class="col-sm-4">
@Html.ValidationMessageFor(Function(m) m.Desc)
@Html.DisplayNameFor(Function(m) m.Desc)
</label>
<div class="col-sm-8">
@Html.TextBoxFor(Function(m) m.Desc,New With{.class="form-control"})
</div>
</div>
<div class="form-group">
<label class="col-sm-4">@Html.DisplayNameFor(Function(m) m.Image) </label>
<div class="col-sm-8">
@Html.TextBoxFor(Function(m) m.Image,New With{.class="form-control",.type="file", .id = "file_upload"})
<div class="progress progress-striped">
<div class="progress-bar progress-bar-success">0%</div>
</div>
<div id="status"></div>
</div>
</div>
<div class="col-lg-4">
<button type="submit" class="btn btn-primary">Add </button>
</div>
End Using
<ValidateAntiForgeryToken>
Public Function AddNewProductToGroup(ByVal prd As ProductCreate) As ActionResult