尝试将表单加载到 FormData 对象中,但它只是创建一个空的 FormData,我可以提醒表单对象(显示 HTMLFORMOBJECT),如果我删除 e.preventDefault,它会将名称/值配对到 url 中,但是FormData 不起作用。我什至尝试创建带有隐藏输入的虚拟表单,但它们不会加载到 FormData 中
JavaScript
$('#create-element-form').submit(function(e) {
e.preventDefault();
var formdata = new FormData(document.getElementById('create-element-form'));
alert(formdata.get('name'));
});
HTML
<form id="create-element-form">
<div class="form-group">
<input type="text" class="form-control" name="name" placeholder="Element Name" maxlength="100" required/>
</div>
<div class="form-group">
<input type="text" class="form-control text-number-input" name="backups" placeholder="Number of backups for element" maxlength="100" required/>
</div>
<button type="submit" class="btn btn-default btn-lg btn-block">Create Element</button>
</form>
它只是提醒
undefined
我觉得这可能是我缺少的一些简单的东西
最佳答案
formdata
不是普通对象。它没有任何可以序列化的属性。您必须使用对象的方法来访问包含的数据。例如:
console.log(formdata.get('name'));
FormData
对象的主要用例是通过 XMLHTTPRequest
发送。
关于Javascript - 表单数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33948037/