我做了一个简单的表单,想要使用jQuery函数new FormData()
发布数据。对我来说,每件事似乎都很好但是当我在data
中显示变量console.log
时,我得到FormData { append=append()}
作为输出。
我的代码是:
<form action="" enctype="multipart/form-data" method="post" name="edit_user" id="edit_user">
<input type="text" name="Fname" >
<input type="file" name="image">
<input type="submit" value="submit">
</form>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$('#edit_user').submit(function(event) {
event.preventDefault();
var formdata = new FormData(this);
console.log(formdata);
});
答案 0 :(得分:3)
您的代码(包含在下面)运行正常。这就是FormData
应该如何工作的方式。可以使用XHR或$.ajax
(请参阅this question for tying it to jQuery)发布数据,但不会将其序列化为字符串。只有在发出XHR请求时才会将其转换为适当的格式。
在没有发出XHR请求的情况下,无法在控制台中的FormData
对象中查看数据。
$(document).ready(function() {
$('#edit_user').submit(function(event) {
event.preventDefault();
//enter code here
var formdata = new FormData(this);
console.log(formdata);
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="" enctype="multipart/form-data" method="post" name="edit_user" id="edit_user">
<input type="text" name="Fname">
<input type="file" name="image">
<input type="submit" value="submit">
</form>
&#13;
答案 1 :(得分:0)
You can get the data by using get function of FormData like this:
console.log(formdata.get('Fname'));