zoukankan      html  css  js  c++  java
  • formData使用总结

    1.formData基本使用

    //可以从form元素初始化一个FormData对象,或者new一个空对象
    var formData = new FormData([fromElement]);
    
    //可以添加一个新的键值对,从form初始化或空对象均可
    formData.append(key,value);

    //formData上传文件,form要设置enctype为multipart/form-data

    <form id="uploadForm" enctype="multipart/form-data">
        <input id="file" type="file" name="file"/>
        <button id="upload" type="button">upload</button>
    </form>

    2.xhr使用formData

    var newFormData = new FormData(someFormElement);
    var formElement = document.getElementById("myFormElement");
    var oReq = new XMLHttpRequest();
    oReq.open("POST", "submitform.php");
    oReq.send(new FormData(formElement));

    还可以在已有表单数据的基础上,继续添加新的键值对,如下:

    var formElement = document.getElementById("myFormElement");
    formData = new FormData(formElement);
    formData.append("serialnumber", serialNumber++);
    oReq.send(formData);

    3.jquery使用formData

    $.ajax({
        url: 'upload01.php',
        method: 'POST',
        data: formData,
        contentType: false,//必须
        processData: false,//必须
        cache: false //上传文件不需要缓存
    })

    参数说明:
    contentType
    jquery ajax的默认值为'application/x-www-form-urlencoded; charset=UTF-8',
    如果有input type=“file”,则contentType应该为‘multipart/form-data’,设置为false,不让
    jquery设置contentType

    processData
    jQuery会处理发送的数据,将数据按照'application/x-www-form-urlencoded'的
    要求转换为查询字符串,如果要发送的数据是DOMDocument或者不需要处理,就可以设置为false不让jQuery
    转换数据,我们这里要发送的数据其实就是DOMDocument

    dataType
    不要设置为json,让jquery根据http响应头的contentType去判断,返回一个合适的数据类型

    4.vue-resource使用formData

    var formData = new FormData();
    formData.append('foo', 'bar');
    
    this.$http.post('/api', formData)

    5.axios使用formData

    6.superAgent使用formData

  • 相关阅读:
    fis3解决web网站缓存问题
    C# 计算每周和每月固定日期
    移动端web页面上滑加载更多功能
    常见三种字符编码的区别:ASCII、Unicode、UTF-8
    ef AddDays报错
    .NET语言的编译过程:中间语言(IL)和即时编译器(JIT)
    ajax 传递数组类型参数后台接收不到的问题
    sql server 作业没跑、开启sql 代理服务、新建作业
    在javascript中NodeList和Array的区别及转换方法
    我经历的几种开发模式和心理
  • 原文地址:https://www.cnblogs.com/mengff/p/7397442.html
Copyright © 2011-2022 走看看