2011-11-07 2 views
1

J'ai du mal à faire fonctionner 'click()' de jQuery dans le bouton Valums Ajax Uploader.Simuler cliquer sur valums Ajax Uploader

Je dois simuler le clic du bouton à partir du code, mais il semble que ce plugin n'utilise pas le clic pour lancer l'explorateur de fichiers. Le sélecteur est correct et il n'y a pas d'erreur JavaScript, mais je n'arrive pas à faire fonctionner le truc. Essayé avec trigger et live également, avec le même résultat.

C'est l'appel:

$("div[class='qq-upload-button']").click(); 

Suis-je le mauvais événement appellent?

Répondre

0

Je suppose que vous devez trouver la fonction appelée sur le clic, et appelez-le manuellement.

+0

J'ai lu le code source du plugin, et il n'y a pas de liaison de clic (je pense). Quelles sont les autres possibilités pour écouter les événements de clic sans cliquer? –

1

Les divisions n'ont pas d'événements de clic. Au lieu de div, vous devez appeler l'événement click du bouton avec un tel code. Cependant, le bouton généré par Valums Ajax Uploader n'a pas d'identifiant ni de classe. Vous devez ajouter un attribut id en éditant le script valums (fileuploader.js). Trouvez simplement la ligne input.setAttribute("type", "file"); dans le fichier javascript et insérez input.setAttribute("id", "btnUpload"); en dessous.

+0

Pas besoin d'ajouter l'identifiant, vous pouvez simplement le lier à l'entrée à l'intérieur de la div principale qui a déjà votre ID. Je vais utiliser jQuery pour montrer ... $ ('# uploadElementID input'). Trigger ('click'); où #uploadElementID est la propriété d'élément avec laquelle vous configurez FileUploader. –

+0

@sevenkul: Belle solution. Cela a fonctionné parfaitement pour mon cas d'utilisation. –

Questions connexes