Trying to figure out FormData, but can't populate it. Other similar questions were because of lacking name
attribute to form
elements, but it seems to not be the case there.
HTML code:
<form class="testForm" action="/database" method="put">
<input type="text" name="bar" value="foo">
</form>
<button type="button" class="testButt" name="testButt">click me!</button>
JS code:
const testButt = document.querySelector('.testButt');
const testForm = document.querySelector(".testForm");
putDataTest = function(){
var xhr = new XMLHttpRequest();
var formData = new FormData(testForm);
console.log(formData); // using existing form as a source, returns an empty formData object;
formData.append("foo", "bar");
console.log(formData); // populating the object explicitly, still empty formData object;
xhr.open('PUT', '/database');
xhr.send(formData); // server sees req.body as empty
}
testButt.addEventListener("click", putDataTest);