Comment transférer un fichier à l'aide d'un simple jquery-ajax appel
Je suis à la recherche d'un simple script côté client pour télécharger un fichier à l'aide d'ajax.
La recherche pour le web pour ce script n'a apporté beaucoup de plugins avec multi-fonctions. Je n'ai pas besoin de multi-feautres - juste pour être en mesure de télécharger aussi simple que possible à l'aide d'ajax
Est-il possible d'écrire quelque chose de simple comme:
$.get('server/upload.php?file = ' + $('#uploadInput').val(), function(data) {
$('.result').html(data);
});
Si c'est possible - comment dois-je l'écrire droite ($('#uploadInput').val()
ne me donne pas le droit chemin d'accès au répertoire - alors, que dois-je faire pour passer à l'emplacement à l'aide d'Ajax).
côté de celle - afin d'obtenir le drag&drop de fichiers - Est-il un simple script pour cela ou dois-je utiliser le plugin (et est-il vraiment minuscule et simple sans multi-fonctions)
OriginalL'auteur Alon | 2012-02-28
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas utiliser AJAX pour charger les fichiers (sauf les clients navigateurs prend en charge le HTML 5, ce qui permet l'accès à l'objet file.).
Votre solution est-à-faux, il
créer un élément de formulaire
Nous avons fixé la cible de l'image pour "results_frame', nous allons définir une fois que le formulaire dans le code HTML comme un vide iframe.
Puis, dans le backend dans votre fichier php, vous pouvez capturer le fichier sous -
Une fois que vous avez fait votre manipulation avec le fichier, vous pouvez faire une écho toutes les informations que vous voulez, y compris l'actualisation de la forme initiale à ce point.
Voir ma réponse, je pense que c'est assez clair ce que je veux dire, c'est correct. Votre réponse, qui ne contient pas de ajax? Ou ai-je raté quelque chose.
J'ai été en utilisant ce depuis des lustres, dites-moi encore une fois ce n'est pas le pur ajax/jQuery: valums.com/ajax-upload
OriginalL'auteur Ohgodwhy
Que vous pourriez réaliser cela à l'aide de certaines fonctionnalités de HTML5 comme le Fichier API (jetez un oeil à la Exemple: chargement de l'utilisateur, le fichier sélectionné dans cet article).
Mais si vous voulez de la croix-navigateur solution, je vous recommande l'utilisation d'un client côté de télécharger le plugin. Par exemple, le jQuery formulaire plugin est très facile à installer. Valums Ajax upload est également très agréable. Il offre de nombreuses fonctionnalités comme le glisser-déposer et télécharger des progrès, mais si vous ne se soucient pas d'eux, ils peuvent être facilement désactivé.
parce que, pour télécharger un fichier sur le serveur, vous devez être en mesure d'accéder à son contenu. Et pour des raisons très évidentes avez pas accès au contenu des fichiers sur l'ordinateur client à l'aide de javascript. En fait le Fichier HTML5 API vous permet de le faire en supposant que l'utilisateur est déjà sélectionné un fichier dans un fichier d'entrée. Aussi je ne vois rien de compliqué dans l'utilisation d'un plugin conçu pour cette tâche.
OriginalL'auteur Darin Dimitrov
Sur les navigateurs modernes vous pouvez utiliser la nouvelle xhr2 (voir http://www.html5rocks.com/en/tutorials/file/xhr2/) pour effectuer un pur AJAX upload de fichier ... y compris la barre de progression. Je ne sais pas vraiment si cela a déjà été intégrée dans la dernière jQuery. Peut-être que quelqu'un d'autre peut faire la lumière sur ce point.
OriginalL'auteur devnull69
Uploadify est une autre excellente solution pour ajax upload. Son
Voir les démos
Oh Il a utilisé pour être un produit gratuit. Juste parce que vous avez à payer pour cela, ne réfute mon point de réponse. Et ils sont difficiles de travail des développeurs, pas un freeloader comme vous, ils méritent un don maintenant. Il a été gratuit pendant de nombreuses années maintenant. Verser un peu de respect pour le développeur
hm, où j'ai "réfuter" votre point de vue? Hey, Starx, voici votre bière! Oh, maintenant, quand vous maintenez une bouteille au froid — payer s'il vous plaît, je la méritais.
OriginalL'auteur Starx
Si vous voulez faire de l'ajax uploader qui fonctionne dans tous les navigateurs modernes, vous devriez vérifier certains plugins jQuery. Voir cet article par exemple: http://www.tutorialchip.com/jquery/9-powerful-jquery-file-upload-plugins/ .
Ce que vous avez suggéré dans votre premier post ne fonctionne pas. Même si vous prenez la forme du contenu, vous ne pouvez pas mettre les informations à OBTENIR. Url maximum peut-être 2000 (?) les caractères de long, de sorte que le téléchargement d'un gros fichier sera la cause de la télécharger à l'écrasement. Vous devez envoyer ce à l'aide de POST.
Btw, j'ai eu une bonne expérience avec ce plugin: http://valums.com/ajax-upload/ . Il est assez simple, de sorte que vous pouvez personnaliser comme vous le souhaitez (avec jQuery/js expérience).
Espère que cela aide.
OriginalL'auteur OptimusCrime