使用jQuery HTML5和FormData上传文件的方法示例

不言
Lepaskan: 2018-11-06 14:23:49
asal
2835 orang telah melayarinya

在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
        }
    });
    });
Salin selepas log masuk

你不需要任何插件,flash或iframe技巧就能有效的实现。这里有一些技巧可以使这些代码以我们期望的方式工作:

当我们创建FormData的实例时,我们传递form [0]而不是form。它的意思是实际的表单元素,但不是jQuery选择器。

我们只是传递false而不是定义contentType。这意味着jQuery不向请求添加 Content-Type头部。

我们设置processData为false,所以,jQuery不会将我们的data值(以FormData为基础)转换为字符串。

Atas ialah kandungan terperinci 使用jQuery HTML5和FormData上传文件的方法示例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan