亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

jquery ajax 上傳文件處理

Snailclimb / 3303人閱讀

摘要:之前都是用原生的寫的請(qǐng)求方式其實(shí)的也可以支持到的,關(guān)鍵是設(shè)置和。方式告訴不要去處理發(fā)送的數(shù)據(jù)告訴不要去設(shè)置請(qǐng)求頭正在進(jìn)行,請(qǐng)稍候成功失敗

FormData對(duì)象

XMLHttpRequest Level 2添加了一個(gè)新的接口FormData.利用FormData對(duì)象,我們可以通過JavaScript用一些鍵值對(duì)來模擬一系列表單控件,我們還可以使用XMLHttpRequest的send()方法來異步的提交這個(gè)"表單".比起普通的ajax,使用FormData的最大優(yōu)點(diǎn)就是我們可以異步上傳一個(gè)二進(jìn)制文件.

所有主流瀏覽器的較新版本都已經(jīng)支持這個(gè)對(duì)象了,比如Chrome 7+、Firefox 4+、IE 10+、Opera 12+、Safari 5+。
之前都是用原生js的XMLHttpRequest寫的請(qǐng)求

XMLHttpRequest方式
xhr.open("POST", uri, true);
xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
        // Handle response.
        alert(xhr.responseText); // handle response.
    }
};
fd.append("myFile", file);
// Initiate a multipart/form-data upload
xhr.send(fd);

其實(shí)jquery的ajax也可以支持到的,關(guān)鍵是設(shè)置:processData 和 contentType 。

ajax方式
var formData = new FormData();
var name = $("input").val();
formData.append("file",$("#upload")[0].files[0]);
formData.append("name",name);
$.ajax({  
        url : Url,  
        type : "POST",  
        data : formData,  
        // 告訴jQuery不要去處理發(fā)送的數(shù)據(jù)
        processData : false, 
        // 告訴jQuery不要去設(shè)置Content-Type請(qǐng)求頭
        contentType : false,
        beforeSend:function(){
               console.log("正在進(jìn)行,請(qǐng)稍候");
                },
        success : function(responseStr) { 
            if(responseStr.status===0){
                console.log("成功"+responseStr);
            }else{
                console.log("失敗");
            }
        },  
        error : function(responseStr) { 
            console.log("error");
        }  
    }); 

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/79823.html

相關(guān)文章

  • HTML5+Ajax上傳文件

    摘要:比起普通的,使用的最大優(yōu)點(diǎn)就是我們可以異步上傳一個(gè)二進(jìn)制文件。方法二一次性上傳多個(gè)文件如果后臺(tái)接口要求單個(gè)文件,就循環(huán)獲取文件信息提交,使用同步上傳。 歡迎交換友鏈 Lakers Blog--進(jìn)擊的程序媛Github:https://github.com/younglaker微博: 江小湖Laker showImg(https://segmentfault.com/img/bVtcT...

    qieangel2013 評(píng)論0 收藏0
  • ajax上傳文件的請(qǐng)求

    摘要:是發(fā)送的必須是類型注意把設(shè)為,讓不要對(duì)做處理,如果不設(shè)置為,會(huì)把轉(zhuǎn)換為字符串。查看文件上傳的請(qǐng)求頭里,參數(shù)為請(qǐng)求參數(shù)之間的界限標(biāo)識(shí)。也就是說防止覆蓋掉的。 1、data是FormData 發(fā)送的data必須是FormData類型 2、注意processData 把processData設(shè)為false,讓jquery不要對(duì)formData做處理,如果processData不設(shè)置為fals...

    Cobub 評(píng)論0 收藏0
  • 文件上傳進(jìn)度提示

    摘要:需求當(dāng)上傳的文件相對(duì)較大時(shí),用戶可能需要等待較長的時(shí)間,這個(gè)時(shí)候前端如果沒有任何提示的話,體驗(yàn)不是很好,如果有上傳進(jìn)度提示,就會(huì)好很多。 需求 當(dāng)上傳的文件相對(duì)較大時(shí),用戶可能需要等待較長的時(shí)間,這個(gè)時(shí)候前端如果沒有任何提示的話,體驗(yàn)不是很好,如果有上傳進(jìn)度提示,就會(huì)好很多。而要在上傳過程實(shí)時(shí)顯示上傳進(jìn)度,則需要已上傳的大小和文件總大小。 前提 請(qǐng)求是異步的。因?yàn)橐獙?shí)時(shí)獲取到上傳的進(jìn)度...

    MageekChiu 評(píng)論0 收藏0
  • 在Laravel項(xiàng)目中實(shí)現(xiàn)Ajax上傳用戶頭像

    摘要:在編寫程序的過程中,經(jīng)常會(huì)遇到一個(gè)經(jīng)典的文件上傳場(chǎng)景上傳頭像圖片?;趯?duì)最好的用戶體驗(yàn)的追求,寫一下之前在項(xiàng)目中實(shí)現(xiàn)在項(xiàng)目中的上傳頭像。 在編寫web程序的過程中,經(jīng)常會(huì)遇到一個(gè)經(jīng)典的文件上傳場(chǎng)景:上傳頭像(圖片)?;趯?duì)最好的用戶體驗(yàn)的追求,寫一下之前在項(xiàng)目中實(shí)現(xiàn)在Laravel項(xiàng)目中的Ajax上傳頭像。 1.配置路由 在Laravel的routes.php中設(shè)置路由: Rou...

    shiina 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<