Я смотрел на этот вопрос и на этот вопрос, а также , но решение с использованием тега <button>
мне не помогло.
Я думаю, это потому, что я использую FormData
, но я думал, что FormData
подхватит все представленные ключи и значения.
Вот простой JSFiddle для того, что я ' Я пытаюсь сделать, но это не работает. Я ожидаю увидеть значения first
и second
в объекте FormData, но отображается только input-data
.
Мне нужно иметь возможность определить, какая кнопка была нажата для отправить форму.
function handleSubmit(event) {
event.preventDefault(); // don't have the browser refresh on submit
const formData = new FormData(event.target);
for (var pair of formData.entries()) {
console.log(pair[0]+ ' ==> ' + pair[1]);
}
}
const form = document.getElementById('form');
form.addEventListener('submit', handleSubmit);
<form id="form">
<input name="input-data"/>
<button type="submit" name="action" value="first">Submit</button>
<button type="submit" name="action" value="second">Another Submit</button>
</form>