2012-11-30 2 views
3

Notre application met à jour un champ caché avec la valeur dont nous avons besoin lorsque le widget glisser/déposer déclenche l'onchange. Nous utilisons ce fichier pour notre traitement ultérieur.Comment réinitialiser/effacer le widget glisser-déposer filepicker.io?

Actuellement, nous cachons simplement la div qui héberge le widget glisser/déposer jusqu'à ce que nous en ayons besoin à nouveau. Malheureusement, lorsque nous montrons à nouveau ce div, le widget conserve le nom de fichier de la dernière image téléchargée, ce qui crée de la confusion pour l'utilisateur. Il semble qu'ils téléchargeront à nouveau le même fichier alors qu'en réalité aucun fichier ne sera téléchargé.

Comment puis-je demander au widget glisser-déposer de se réinitialiser ou de se réinitialiser?

Répondre

1

C'est un peu un hack, mais vous pouvez déclencher un événement click sur le div .cancel et il effacera le widget.

Voici quelques pseudo-code pour obtenir les DOM-élément et cliquez dessus: $('select span with X in it').get(0).click();

+0

J'ai essayé de le faire. Cependant, il ne fait que lancer la boîte de dialogue du sélecteur filepicker.io et n'efface pas le widget glisser/déposer. J'ai confirmé que j'obtiens le bon élément avec mon sélecteur jQuery. Appeler '.click()' ne semble pas avoir le même effet que le fait de cliquer avec la souris. – aezell

+0

J'ai été capable de reproduire - jQuery semble utiliser une logique de bouillonnement d'événements étranges. Si vous appelez .click() sur l'objet DOM plutôt que sur l'objet jQuery cela fonctionne – brettcvz

+0

Cela a fonctionné parfaitement. J'apprécie vraiment l'aide! – aezell

0

Voici un hack qui tire parti de l'attribut data-fp-class:

<input id="myInput" type="filepicker-dragdrop" data-fp-button-class="btn btn-primary btn-small" data-fp-class="filepicker-dragdrop" data-fp-apikey="urKey" data-fp-mimetypes="image/png,image/jpeg" data-fp-container="modal" data-fp-maxsize="204800" data-fp-services="COMPUTER,URL,DROPBOX,FACEBOOK,GOOGLE_DRIVE,FLICKR,INSTAGRAM,PICASA,BOX"> 

Une fois le téléchargement terminé et passe au choix fichier avec le « x » à droite, vous pouvez supprimer la sélection en faisant:

$('.filepicker-dragdrop span').get(0).click(); 

Ils ont vraiment besoin d'une API pour ce faire, un s c'est assez commun (détecter une erreur besoin d'enlever)

Questions connexes