jquery new FormData()
时间: 2023-12-20 21:03:36 浏览: 106
`FormData` 是 HTML5 新增的 API,用于在客户端创建表单数据对象,可以通过 AJAX 方式将表单数据提交到服务器端。
而在 jQuery 中,可以使用 `FormData()` 和 `$.ajax()` 方法来实现表单数据的提交。
`FormData()` 方法用于创建一个空的 `FormData` 对象,可以用来存储表单数据。例如:
```javascript
var formData = new FormData();
```
接下来,可以使用 `formData.append()` 方法将表单数据添加到 `formData` 对象中。`append()` 方法接受两个参数,第一个参数是表单字段的名称,第二个参数是表单字段的值。例如:
```javascript
formData.append('username', 'test');
formData.append('password', '123456');
```
当表单数据准备好后,可以使用 `$.ajax()` 方法将表单数据提交到服务器端。需要注意的是,在使用 `$.ajax()` 方法时,需要设置 `processData` 和 `contentType` 参数,以便正确地处理表单数据。例如:
```javascript
$.ajax({
url: 'http://example.com/submit',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(data) {
console.log('success');
},
error: function(xhr, status, error) {
console.log('error');
}
});
```
其中,`processData` 参数设置为 `false`,表示不要对表单数据进行处理;`contentType` 参数设置为 `false`,表示让浏览器自动设置 `Content-Type` 头部,以便正确地提交表单数据。
需要注意的是,`FormData()` 方法和 `$.ajax()` 方法都是 HTML5 新增的 API,不支持 IE9 及以下版本的浏览器。如果需要支持这些浏览器,可以使用 jQuery 插件 `jquery.form.js`,它可以模拟 `FormData` 和 `$.ajax()` 方法的功能,以便在低版本浏览器中正确地提交表单数据。
阅读全文