如果没有<form>标签,也没有enctype="multipart/form-data"属性,怎么使用formData对象提交表单呢?如下方式
form标签的enctype属性
enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码。
默认地,表单数据会编码为 "application/x-www-form-urlencoded"。就是说,在发送到服务器之前,所有字符都会进行编码(空格转换为 "+" 加号,特殊符号转换为 ASCII HEX 值)。
如果没使用form表单,用了new Fromdata(),需要enctype属性设置,可以在ajax上设置如下
cache: false,//不需要缓存
processData: false,//不需要对数据处理
contentType: false
var formData = new FormData(); formData.append('name', $('#name').val()); formData.append('file', $('#file')[0].files[0]); $.ajax({ url: '', type: 'POST', data: formData, cache: false, processData: false, contentType: false }).done(function(res) { }).fail(function(res) {});