首頁  >  文章  >  web前端  >  使用jQuery HTML5和FormData上傳檔案的方法範例

使用jQuery HTML5和FormData上傳檔案的方法範例

不言
不言原創
2018-11-06 14:23:492837瀏覽

在HTML5之前,有一系列jQuery的技術和外掛程式來實作AJAX檔案上傳。 HTML5引進了可以簡化檔案上傳的FormData類別。本篇文章為大家介紹使用jQuery HTML5和FormData上傳檔案的方法範例。

$('#myform').on('sumbit', function(){
    var form = $(this);
    var formdata = false;
    if (window.FormData)
    {
        formdata = new FormData(form[0]);
    }
    var formAction = form.attr('action');
    $.ajax({
        url         : '/upload',
        data        : formdata ? formdata : form.serialize(),
        cache       : false,
        contentType : false,
        processData : false,
        type        : 'POST',
        success     : function(data, textStatus, jqXHR){
            // Callback code
        }
    });
    });

你不需要任何插件,flash或iframe技巧就能有效的實作。這裡有一些技巧可以讓這些程式碼以我們期望的方式運作:

當我們建立FormData的實例時,我們傳遞form [0]而不是form。它的意思是實際的表單元素,但不是jQuery選擇器。

我們只是傳遞false而不是定義contentType。這意味著jQuery不向請求添加 Content-Type頭部。

我們設定processData為false,所以,jQuery不會將我們的data值(以FormData為基礎)轉換為字串。

以上是使用jQuery HTML5和FormData上傳檔案的方法範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn