尝试将表单加载到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
我觉得这可能是我想念的简单
答案 0 :(得分:8)
formdata
不是普通对象。它没有任何可以序列化的属性。您必须使用对象的方法来访问包含的数据。例如:
console.log(formdata.get('name'));
FormData
个对象的主要用例将通过XMLHTTPRequest
发送。