Maison interface Web js tutoriel Méthode pour implémenter le téléchargement de fichiers jquery-file-upload avec effet de barre de progression

Méthode pour implémenter le téléchargement de fichiers jquery-file-upload avec effet de barre de progression

Dec 19, 2017 pm 04:25 PM
上传 calendrier

jQuery File Upload 是一个Jquery图片上传组件,支持多文件上传、取消、删除,上传前缩略图预览、列表显示图片大小,支持上传进度条显示;支持各种动态语言开发的服务器端。本文主要介绍了jquery-file-upload 文件上传带进度条效果,代码分为html部分css部分和js部分,非常不错,具有参考借鉴价值,需要的朋友可以参考下,希望能帮助到大家。

效果图如下所示:

html 部分


<p style="line-height:34px;margin-top:20px;"> 
    <label style="float: left;font-size:14px">上传文件:</label> 
    <span class="btn btn-success fileinput-button fn-left"> 
   <i class="glyphicon glyphicon-plus"></i> 
   <span>浏览...</span> 
   <input type="file" name="file" id="file_upload"> 
  </span> 
    <p style="float: left;margin-left: 20px;font-weight: bold" id="uploadText"></p> 
    </p> 
    <p class="fn-clear"></p> 
    <p id="progress"> 
    <p class="bar" style="width: 0%;"></p> 
    </p>
Copier après la connexion

css 部分


<link rel="stylesheet" href="/admin/assets/plugins/jquery-file-upload/css/jquery.fileupload-ui.css" rel="external nofollow" > 
<link rel="stylesheet" href="/admin/assets/plugins/jquery-file-upload/css/jquery.fileupload.css" rel="external nofollow" > 

/*文件上传控件*/ 
.bar { 
 background-image: -webkit-linear-gradient(top,#5cb85c 0,#449d44 100%); 
 background-image: -o-linear-gradient(top,#5cb85c 0,#449d44 100%); 
 background-image: -webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44)); 
 background-image: linear-gradient(to bottom,#5cb85c 0,#449d44 100%); 
 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=&#39;#ff5cb85c&#39;, endColorstr=&#39;#ff449d44&#39;, GradientType=0); 
 background-repeat: repeat-x; 
 height: 20px; 
 font-size: 12px; 
 line-height: 20px; 
 color: #fff; 
 text-align: center; 
 background-color: #428bca; 
 -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); 
 box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); 
 -webkit-transition: width .6s ease; 
 -o-transition: width .6s ease; 
 transition: width .6s ease; 
} 
#progress { 
 background-image: -webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%); 
 background-image: -o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%); 
 background-image: -webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5)); 
 background-image: linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%); 
 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=&#39;#ffebebeb&#39;, endColorstr=&#39;#fff5f5f5&#39;, GradientType=0); 
 background-repeat: repeat-x; 
 height: 20px; 
 width: 0%; 
 margin-bottom: 20px; 
 overflow: hidden; 
 background-color: #f5f5f5; 
 border-radius: 4px; 
 -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); 
 box-shadow: inset 0 1px 2px rgba(0,0,0,.1); 
 margin-top: 20px; 
} 
.glyphicon { 
 position: relative; 
 top: 1px; 
 display: inline-block; 
 font-family: &#39;Glyphicons Halflings&#39;; 
 font-style: normal; 
 font-weight: 400; 
 line-height: 1; 
 -webkit-font-smoothing: antialiased; 
 -moz-osx-font-smoothing: grayscale; 
} 
.glyphicon-plus:before { 
 content: "\2b"; 
} 
.btn-success { 
 color: #fff; 
 background-color: #5cb85c; 
 border-color: #4cae4c; 
} 
.btn { 
 display: inline-block; 
 padding: 6px 12px; 
 margin-bottom: 0; 
 font-size: 14px; 
 font-weight: 400; 
 line-height: 1.42857143; 
 text-align: center; 
 white-space: nowrap; 
 vertical-align: middle; 
 cursor: pointer; 
 -webkit-user-select: none; 
 -moz-user-select: none; 
 -ms-user-select: none; 
 user-select: none; 
 background-image: none; 
 border: 1px solid transparent; 
 border-radius: 4px; 
}
Copier après la connexion

js 部分


<script src="/admin/assets/plugins/jquery-file-upload/js/vendor/jquery.ui.widget.js"></script> 
<script src="/admin/assets/plugins/jquery-file-upload/js/jquery.fileupload.js"></script> 
<script type="text/javascript" src="${pageContext.request.contextPath}/admin/assets/plugins/jquery-1.10.2.min.js"></script>
Copier après la connexion


<span style="font-family:monospace;font-size:14px;"> <span id="_xhe_cursor"></span>$(&#39;#file_upload&#39;).fileupload({ 
  dataType: &#39;json&#39;, 
  url:&#39;${pageContext.request.contextPath}/excel/upload&#39;, 
  autoUpload:false, 
  add: function (e, data) { 
  $(&#39;#progress&#39;).css( 
   &#39;width&#39;,&#39;0%&#39; 
  ); 
  $(&#39;#progress .bar&#39;).css( 
   &#39;width&#39;, &#39;0%&#39; 
  ); 
  $("#uploadText").empty(); 
  var fileType = data.files[0].name.split(&#39;.&#39;).pop(); 
  // console.log(data); 
  var acceptFileTypes = /xls|xlsx$/i; 
  var size = data.files[0].size; 
  size = (size/1024).toFixed(2);//文件大小单位kb 
  var maxFileSize = 5*1024;//最大允许文件大小单位kb 
  if (!acceptFileTypes.test(fileType)) { 
   new Message({message:"不支持的文件类型,仅支持EXCEL文件"}); 
   return ; 
  } 
  if(size>maxFileSize){ 
   new Message({message:"文件大小:"+size+"KB,超过最大限制:"+maxFileSize+"KB"}); 
   return ; 
  } 
  data.context = $("<button class=&#39; ui-button ui-button-lwhite&#39;/>").text("上传") 
   .appendTo("#uploadText") 
   .click(function () { 
    data.context = $("<p/>").text("正在上传...").replaceAll($(this)); 
    data.submit(); 
   }); 
  }, 
  progressall: function (e, data) { 
  var progress = parseInt(data.loaded / data.total * 100, 10); 
  $(&#39;#progress&#39;).css( 
   &#39;width&#39;,&#39;100%&#39; 
  ); 
  $(&#39;#progress .bar&#39;).css( 
   &#39;width&#39;,progress + &#39;%&#39; 
  ); 
  }, 
  fail:function (e, data) { 
  new Message({message:"上传失败"}); 
  }, 
  done: function (e, data) { 
  console.log(data.files[0]); 
  var fileName = data.files[0].name; 
  var size = data.files[0].size; 
  var obj = data.result; 
  if(obj.success == true){ 
   $("#filePath").val(obj.result.fileId+"&"+obj.result.opLogId); 
   data.context.text("文件上传已完成!文件名:"+fileName+" 文件大小:"+size+"kb"); 
  }else{ 
   alert(obj.errorMsg); 
  } 
  } 
 });</span>
Copier après la connexion

XHR响应为Json时IE的下载BUG

这里需要特别注意的是,由于jQuery File Upload都是采用XHR在传递数据,服务器端返回的通常是JSON格式的响应,但是IE会将这些JSON响应误认为是文件传输,然后直接弹出下载框询问是否需要下载。

解决这个问题的方法是必须将相应的Http Head从


Content-Type: application/json
Copier après la connexion

更改为


Content-Type: text/
Copier après la connexion

相关推荐:

php判断文件上传图片格式的方法介绍

Thinkphp3.2中多文件上传只上传一张的问题解决

实例讲解php实现常用文件上传类

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment implémenter le téléchargement et le traitement de fichiers dans FastAPI Comment implémenter le téléchargement et le traitement de fichiers dans FastAPI Jul 28, 2023 pm 03:01 PM

Comment implémenter le téléchargement et le traitement de fichiers dans FastAPI FastAPI est un framework Web moderne et performant, facile à utiliser et puissant. Il fournit une prise en charge native du téléchargement et du traitement de fichiers. Dans cet article, nous apprendrons comment implémenter les fonctions de téléchargement et de traitement de fichiers dans le framework FastAPI, et fournirons des exemples de code pour illustrer les étapes de mise en œuvre spécifiques. Tout d’abord, nous devons importer les bibliothèques et modules requis : fromfastapiimportFastAPI,UploadF

Comment télécharger des paroles sur QQ Music Comment télécharger des paroles sur QQ Music Feb 23, 2024 pm 11:45 PM

Avec l’avènement de l’ère numérique, les plateformes musicales sont devenues l’un des principaux moyens permettant aux gens d’obtenir de la musique. Cependant, parfois, lorsque nous écoutons des chansons, nous constatons qu’il n’y a pas de paroles, ce qui est très troublant. Beaucoup de gens espèrent que les paroles pourront être affichées lors de l'écoute de chansons afin de mieux comprendre le contenu et les émotions des chansons. QQ Music, en tant que l'une des plus grandes plateformes musicales en Chine, offre également aux utilisateurs la fonction de téléchargement de paroles, afin que les utilisateurs puissent mieux profiter de la musique et ressentir la connotation de la chanson. Ce qui suit explique comment télécharger des paroles sur QQ Music. d'abord

Étapes simples pour télécharger votre propre musique sur Kugou Étapes simples pour télécharger votre propre musique sur Kugou Mar 25, 2024 pm 10:56 PM

1. Ouvrez Kugou Music et cliquez sur votre photo de profil. 2. Cliquez sur l'icône des paramètres dans le coin supérieur droit. 3. Cliquez sur [Télécharger des œuvres musicales]. 4. Cliquez sur [Télécharger les travaux]. 5. Sélectionnez la chanson et cliquez sur [Suivant]. 6. Enfin, cliquez sur [Télécharger].

Comment résoudre le problème de la vitesse de téléchargement lente sur un ordinateur Win10 Comment résoudre le problème de la vitesse de téléchargement lente sur un ordinateur Win10 Jul 01, 2023 am 11:25 AM

Comment résoudre la vitesse de téléchargement lente de l'ordinateur Win10 ? Lorsque nous utilisons l'ordinateur, nous pouvons avoir l'impression que la vitesse de téléchargement des fichiers de notre ordinateur est très lente. Alors, quelle est la situation ? En fait, cela est dû au fait que la vitesse de téléchargement par défaut de l'ordinateur est de 20 %, ce qui rend la vitesse de téléchargement très lente. De nombreux amis ne savent pas comment fonctionner en détail. L'éditeur a compilé les étapes pour formater le lecteur C. Win11 ci-dessous. Si vous êtes intéressé, suivez Jetons un coup d'œil ci-dessous ! Solution à la vitesse de téléchargement lente de Win10 1. Appuyez sur win+R pour appeler run, entrez gpedit.msc et appuyez sur Entrée. 2. Sélectionnez le modèle de gestion, cliquez sur Réseau--Qos Packet Scheduler et double-cliquez sur Limiter pour réserver la bande passante. 3. Sélectionnez Activé, ce qui amènera

Comment améliorer la vitesse de téléchargement de l'ordinateur Comment améliorer la vitesse de téléchargement de l'ordinateur Jan 15, 2024 pm 06:51 PM

La vitesse de téléchargement devient très lente ? Je pense que c'est un problème que de nombreux amis rencontreront lors du téléchargement d'éléments sur leur ordinateur. Si le réseau est instable lors de l'utilisation d'un ordinateur pour transférer des fichiers, la vitesse de téléchargement sera très lente. Alors, comment puis-je augmenter la vitesse de téléchargement du réseau ? Ci-dessous, l'éditeur vous expliquera comment résoudre le problème de la lenteur de la vitesse de téléchargement de l'ordinateur. En ce qui concerne la vitesse du réseau, nous savons tous que la vitesse d'ouverture des pages Web, la vitesse de téléchargement et la vitesse de téléchargement sont également très critiques. Certains utilisateurs ont souvent besoin de télécharger des fichiers sur le disque réseau, donc une vitesse de téléchargement rapide permettra sans aucun doute d'économiser. vous avez beaucoup d'argent. Moins de temps, que dois-je faire si la vitesse de téléchargement est lente ? Ci-dessous, l'éditeur vous propose des images et des textes expliquant comment gérer les vitesses de téléchargement lentes de l'ordinateur. Comment résoudre le problème de la vitesse de téléchargement lente de l'ordinateur ? Cliquez sur « Démarrer - Exécuter » ou sur « Touche Fenêtre »

Comment prendre des photos et les télécharger sur ordinateur Comment prendre des photos et les télécharger sur ordinateur Jan 16, 2024 am 10:45 AM

Tant que l'ordinateur est équipé d'un appareil photo, il peut prendre des photos, mais certains utilisateurs ne savent toujours pas comment prendre des photos et les télécharger. Je vais maintenant vous donner une introduction détaillée à la méthode de prise de photos sur l'ordinateur. afin que les utilisateurs puissent télécharger les images où ils le souhaitent. Comment prendre des photos et les télécharger sur un ordinateur 1. Ordinateur Mac 1. Ouvrez le Finder et cliquez sur l'application à gauche. 2. Après ouverture, cliquez sur l'application Appareil photo. 3. Cliquez simplement sur le bouton photo ci-dessous. 2. Ordinateur Windows 1. Ouvrez le champ de recherche ci-dessous et saisissez appareil photo. 2. Ouvrez ensuite l'application recherchée. 3. Cliquez sur le bouton photo à côté.

Comment implémenter les fonctions de lecture et de téléchargement vidéo via l'interface API PHP Kuaishou Comment implémenter les fonctions de lecture et de téléchargement vidéo via l'interface API PHP Kuaishou Jul 21, 2023 pm 04:37 PM

Comment implémenter les fonctions de lecture et de téléchargement de vidéos via l'interface API PHP Kuaishou Introduction : Avec l'essor des médias sociaux, la demande du public pour le contenu vidéo a progressivement augmenté. Kuaishou, en tant que courte application sociale sur le thème de la vidéo, est appréciée par de nombreux utilisateurs. Cet article expliquera comment utiliser PHP pour écrire du code afin d'implémenter des fonctions de lecture vidéo et de téléchargement via l'interface API Kuaishou. 1. Obtenez le jeton d'accès. Avant d'utiliser l'interface API Kuaishou, vous devez d'abord obtenir le jeton d'accès. Le jeton est l'identité pour accéder à l'interface API

Comment implémenter la fonction de téléchargement d'avatar dans Vue Comment implémenter la fonction de téléchargement d'avatar dans Vue Nov 07, 2023 am 08:01 AM

Vue est un framework frontal populaire qui peut être utilisé pour créer des applications hautement interactives. Pendant le processus de développement, le téléchargement d’avatars est l’une des exigences courantes. Par conséquent, dans cet article, nous présenterons comment implémenter la fonction de téléchargement d'avatar dans Vue et fournirons des exemples de code spécifiques. Utiliser une bibliothèque tierce Afin d'implémenter la fonction de téléchargement d'avatar, nous pouvons utiliser une bibliothèque tierce, telle que vue-upload-component. Cette bibliothèque fournit un composant de téléchargement qui peut être facilement intégré aux applications Vue. Voici un exemple simple

See all articles