最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery+ajax實現(xiàn)文件上傳功能

 更新時間:2020年12月22日 08:48:18   作者:李大璟  
這篇文章主要為大家詳細介紹了jQuery+ajax實現(xiàn)文件上傳,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

jQuery+ajax實現(xiàn)文件上傳功能(顯示文件上傳進度),供大家參考,具體內(nèi)容如下

具體實現(xiàn)步驟

1、定義UI結構,引入bootstrap的CSS文件和jQuery文件
2、給上傳按鈕綁定點擊事件
3、驗證是否選擇了文件
4、向FormData中追加文件
5、使用ajax發(fā)起上傳文件的請求
6、設置文件的路徑
7、使用xhr獲得文件上傳的進度
8、當文件上傳完成讓進度條顯示綠色

<style>
 #loading {
 width: 20px;
 height: 20px;
 }
 
 #img {
 display: block;
 width: 200px;
 height: 200px;
 border-radius: 50%;
 background-color: #abcdef;
 opacity: .5;
 }
</style>

<body>
 <!--multiple可以選擇多個文件 -->
 <input type="file" multiple name="" id="ipt" multiple><button id="btn" type="submit">上傳文件</button>
 <img id="loading" src="../img/loading.gif" alt="" style="display: none;">
 <!-- bootstrap中引入條件 -->
 <div class="progress" style="margin-top: 10px;width: 100px;margin-left: 10px;">
 <div id="progress" class="progress-bar progress-bar-striped active" role="progressbar" aria-valuenow="45" aria-valuemin="0" aria-valuemax="100" style="width: 0%;">
 0%
 </div>
 </div>
 <!-- 顯示上傳到服務器的圖片 -->
 <img src="" alt="" id="img" style="display: none;">
 <script src="../lib/jquery-1.11.0.min.js"></script>
 <script>
 $(function() {
 $('#btn').on('click', function() {
 // 獲取文件列表
 var file = $('#ipt')[0].files
  // 判斷是否選擇了文件
 if (file.length <= 0) {
  return alert('請上傳文件')
 }
 // 創(chuàng)建formdata
 var fd = new FormData()
  // 向formdata中傳入數(shù)據(jù)
  // fd.append()
  // file是一個偽數(shù)組
 fd.append('avatar', file[0])
  // 用ajax傳送數(shù)據(jù)
 $.ajax({
  type: 'post',
  url: 'http://www.liulongbin.top:3006/api/upload/avatar',
  // 數(shù)據(jù)不需要編碼
  contentType: false,
  // 數(shù)據(jù)對象不需要轉(zhuǎn)換成鍵值對格式
  processData: false,
  data: fd,
  beforeSend: function() {
  $('#loading').show()
  },
  complete: function() {
  $('#loading').hide()
  },
  success: function(res) {
  // 判斷是否接收成功
  if (res.status !== 200) {
  return alert(reg.msg)
  }
  $('#img').attr('src', 'http://www.liulongbin.top:3006' + res['url']).css('display', 'block')

  },
  xhr: function xhr() {
  var xhr = new XMLHttpRequest()
  // 獲取文件上傳的進度
  xhr.upload.onprogress = function(e) {
  // e.lengthComputable表示當前的進度是否是可以計算,返回布爾值
  if (e.lengthComputable) {
   // e.loaded表示下載了多少數(shù)據(jù), e.total表示數(shù)據(jù)總量
   var percentComplete = Math.ceil((e.loaded / e.total) * 100)
   // 讓進度條的寬度變化
   $('#progress').css('width', percentComplete)
   // 在進度條中顯示百分比
   $('#progress').html(percentComplete + 'px')
  }
  }
  // 文件加載完成
  xhr.upload.onload = function() {
  $('#progress').removeClass('progress-bar progress-bar-striped').addClass('progress-bar progress-bar-success')
  }
  return xhr
  }

 })

 })

 })
 </script>
</body>

效果演示(slow3g狀態(tài))

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • jQuery實現(xiàn)的超酷蘋果風格圖標滑出菜單效果代碼

    jQuery實現(xiàn)的超酷蘋果風格圖標滑出菜單效果代碼

    這篇文章主要介紹了jQuery實現(xiàn)的超酷蘋果風格圖標滑出菜單效果代碼,涉及jQuery基于鼠標hover事件動態(tài)操作頁面元素屬性的相關技巧,非常美觀實用,需要的朋友可以參考下
    2015-09-09
  • JQuery操作表格(隔行著色,高亮顯示,篩選數(shù)據(jù))

    JQuery操作表格(隔行著色,高亮顯示,篩選數(shù)據(jù))

    最近項目里對表格的操作比較多。以往我們要做一些效果的時候往往通過程序代碼來實現(xiàn),這個努力不值,因為JQuery是完全可以做到的,并且是客戶端運行,不經(jīng)過服務器處理,給用戶的反應快,也減少了服務器壓力
    2012-02-02
  • $.extend 的一個小問題

    $.extend 的一個小問題

    本文給大家記錄的是個人在使用$.extend 的時候遇到的一個小問題,以及原因分析和解決方案,十分的實用,有需要的小伙伴可以參考下。
    2015-06-06
  • jQuery+ajax的資源回收處理機制分析

    jQuery+ajax的資源回收處理機制分析

    這篇文章主要介紹了jQuery+ajax的資源回收處理機制,結合實例形式簡單分析了ajax中complete對象完成回調(diào)之后的資源回收處理機制用法,需要的朋友可以參考下
    2017-01-01
  • Jquery知識點二 jquery下對數(shù)組的操作

    Jquery知識點二 jquery下對數(shù)組的操作

    眾所周知,Jquery是對JavaScript的一種高效的封裝,所以Jquery要操作的數(shù)組即是JavaScript中的數(shù)組,在JavaScript中我們使用for以及for-in進行數(shù)組的操作,而在Jquery中則使用$.map()、$.each()來操作數(shù)組
    2011-01-01
  • 使用基于jquery的gamequery插件做JS乒乓球游戲

    使用基于jquery的gamequery插件做JS乒乓球游戲

    現(xiàn)在jquery比較流行,用js做游戲的也越來越多了,雖然現(xiàn)在html5出來了,但實際上要用html5做點啥出來還是得靠javascript,所以學好js是非常重要的
    2011-07-07
  • JQuery DataTable刪除行后的頁面更新利用Ajax解決

    JQuery DataTable刪除行后的頁面更新利用Ajax解決

    使用Jquery的DataTable進行數(shù)據(jù)表處理非常方便,常遇到的一個問題就是刪除一行后頁面必須進行更新,下面與大家分享下使用Ajax的解決方法
    2013-05-05
  • jQuery列表檢索功能實現(xiàn)代碼

    jQuery列表檢索功能實現(xiàn)代碼

    要實現(xiàn)一個簡單的列表,右上角有一個檢索功能我們要實現(xiàn)的是列表檢索功能,具體實例代碼大家參考下本文
    2017-07-07
  • jQuery實現(xiàn)的超簡單輪播圖功能示例【代碼解釋】

    jQuery實現(xiàn)的超簡單輪播圖功能示例【代碼解釋】

    這篇文章主要介紹了jQuery實現(xiàn)的超簡單輪播圖功能,結合完整實例形式分析了基于jQuery實現(xiàn)的輪播圖相關功能實現(xiàn)、樣式設置與注意事項,需要的朋友可以參考下
    2023-05-05
  • jQuery.form.js的使用詳解

    jQuery.form.js的使用詳解

    本文使用jquery.form.js解決提交之后,頁面發(fā)生跳轉(zhuǎn),在一個空白頁面上顯示了后端返回的json數(shù)據(jù)問題,需要的朋友參考下
    2017-06-06

最新評論

宿松县| 舒兰市| 边坝县| 沁水县| 京山县| 江都市| 分宜县| 安丘市| 柞水县| 岑巩县| 肥乡县| 安宁市| 吴桥县| 周口市| 永善县| 鲜城| 文山县| 南投市| 勐海县| 济宁市| 鄱阳县| 开鲁县| 尉氏县| 灵石县| 锡林浩特市| 泰州市| 东兴市| 景洪市| 麦盖提县| 天气| 乐安县| 宜兰县| 环江| 息烽县| 呼伦贝尔市| 馆陶县| 沾化县| 宁城县| 五华县| 安宁市| 原阳县|