Maison  >  Article  >  interface Web  >  Comment télécharger des fichiers de manière asynchrone en HTML

Comment télécharger des fichiers de manière asynchrone en HTML

php中世界最好的语言
php中世界最好的语言original
2018-02-08 09:38:092193parcourir

Cette fois, je vais vous montrer comment télécharger des fichiers de manière asynchrone en HTML. Quelles sont les précautions pour télécharger des fichiers de manière asynchrone en HTML. Voici un cas pratique, jetons un coup d'œil.

Le code est le suivant :

<form action="/hehe" method="post"> 
<input type="text" value="hehe"/> 
<input type="submit" value="upload" id="upload"/> 
</form>

Il s'agit de la méthode de soumission de formulaire la plus courante et la plus simple en HTML, mais cette méthode doit changer de page. Peut-être que parfois nous voulons être sur la même. page Lorsque vous interagissez avec le serveur, vous ne souhaitez pas passer à une autre page après avoir soumis le formulaire. Que devez-vous faire Voici plusieurs façons de soumettre des formulaires.
Introduisez d'abord une solution pour sauver le pays à travers des courbes. L'extrait de code ci-dessus n'a pas besoin d'être modifié. Ajoutez simplement le code suivant

<iframe id="uploadFrame" name="uploadFrame"></iframe>

et ajoutez l'attribut cible . sous la forme target=uploadFrame , l'attribut target doit être cohérent avec la valeur de l'identifiant dans l'iframe (ou la valeur de l'attribut name, vous le saurez après l'avoir essayé).

Une brève explication, en fait, notre formulaire ici est rafraîchi après soumission, mais pourquoi ne passe-t-il pas à la page C'est à cause de cette iframe. En fait, nous l'avons rafraîchi dans l'iframe, et le. iframe est vide, c'est-à-dire que cela revient à ne pas rafraîchir, ce qui nous donne un sentiment d'asynchrone. Ce n'est pas une méthode orthodoxe, mais c'est aussi un moyen de sauver le pays. Bien sûr, cette méthode n'est pas applicable dans de nombreux cas. Par exemple, nous voulons soumettre un formulaire complété. Après avoir récupéré quelque chose sur le serveur, cette méthode ne fonctionnera évidemment pas. Ici, nous devons également soumettre le tableau de manière véritablement asynchrone.

(2)jquerySoumission de formulaire asynchrone

Nous introduisons ici ajaxupload, un plug-in de soumission de formulaire pour jquery, et son utilisation est relativement simple

<body> 
<form action="/hehe" method="post"> 
<input type="text" value="hehe"/> 
<input type="button" value="upload" id="upload"/> 
<!--<input type="button" value="send" onclick="send()"/>--> 
</form> 
<script> 
(function(){ 
new AjaxUpload("#upload", { 
action: &#39;/hehe&#39;, 
type:"post", 
data: {}, 
name: &#39;textfield&#39;, 
onSubmit: function(file, ext) { 
alert("上传成功"); 
}, 
onComplete: function(file, response) { 
} 
}); 
})(); 
</script> 
</body>


Le code principal est publié ici. Une fois le rendu de la page terminé, nous utilisons une fonction auto-exécutable pour ajouter un événement de téléchargement asynchrone au bouton avec l'identifiant upload, new AjaxUpload(id, object) L'identifiant in correspond à l'identifiant de l'objet lié. Comme pour le deuxième paramètre, les données sont des données supplémentaires. Le nom peut être arbitraire. La fonction onSubmit est la fonction de rappel avant de télécharger le fichier. Le premier paramètre file est le nom du fichier et ext est l'extension du fichier. Quant à la fonction onComplete, les données renvoyées par le serveur peuvent être traitées. Les éléments ci-dessus sont deux implémentations simples de clients de téléchargement de fichiers.

Je pense que vous maîtrisez les méthodes après avoir lu ces cas. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture connexe :

Quels sont les paramètres de la fenêtre contextuelle de la page Web IE

Comment définir la bordure et style de transparence de Div

Solution à l'élément margin-top non valide dans la balise div

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:
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