Я пытаюсь отправить данные формы через вызов Ajax на странице бритвы.Однако у меня возникают проблемы с созданием FormData для добавления в вызов Ajax.
Вот форма
<form id="dropdownForm" asp-action="Index" asp-controller="Statements" method="post">
<input type="text" id="startInput" name="start" hidden />
<input type="text" id="endInput" name="end" hidden />
<div class="form-group">
<p>Choose an account</p>
<select id="AccountDropdown" select class="selectpicker" data-size="10" data-live-search="true" asp-for="@Model.SelectedAccounts" multiple data-actions-box="true" data-style="btn-white" style="right:0; left:auto;">
@foreach (var item in Model.AccountDropdown)
{
if (Model.SelectedAccounts.Any(e => e.AccountValue == item.AccountValue))
{
<option value="@item.AccountValue" selected>@item.AccountName (@item.AccountCode)</option>
}
else
{
<option value="@item.AccountValue">@item.AccountName (@item.AccountCode)</option>
}
}
</select>
</div>
<div class="form-group">
<button id="accountSubmit" value="Update Selection" class="btn btn-primary">Update Selection</button>
</div>
У меня есть отдельная кнопка на странице, которую яхочу отправить эту форму другому действию контроллера.
То, что я сделал, это.
let myForm = document.getElementById('dropdownForm');
let formData = new FormData(myForm);
$.ajax({
async: false,
cache: false,
//contentType: 'multipart/form-data',
contentType: false,
type: 'POST',
data : formData,
url: '/Statements/GetStatementData',
success: function (data) {
tableData = data.StatementsList;
},
error: function (e) {
Console.log(e);
}
});
Переменная myForm извлекается правильно, и она содержит все значения и информацию, которые мне нужныв этом.Но объект FormData пуст, и он вызывает ошибку при внутреннем вызове Ajax.
Вот скриншот объектов сразу после того, как я объявляю formData
![enter image description here](https://i.stack.imgur.com/2KjEx.png)
Любая помощь будет принята с благодарностью.