Pourquoi la boîte de dialogue ouvrir fichier s'ouvre deux fois en cliquant sur le bouton FireFox
J'ai un file <input> field
et un <span>
décore le champ de saisie:
<span class="span5 btn btn-primary btn-file" id="chose_files_btn" onclick="filechose_button.click()">chose files
<input id="filechose_button" type="file" name="fileData" size="1" style="display: none"/>
</span>
Tandis que le comportement de cette est que je suppose que, dans Chrome et Safari, FireFox ouvre deux file input dialogs
en cliquant sur le button(span)
.
Pourquoi cela pourrait se produire?
Je suppose, que le champ de saisie fichier est invisible et que seul l'accès par la plage avec un bouton de comportement.
Mise à jour:
si je mets de la <input>
à l'extérieur de <span>
il se comporte normalement.
<span class="span5 btn btn-primary btn-file" id="chose_files_btn" onclick="filechose_button.click()">chose files</span>
<input id="filechose_button" type="file" name="fileData" size="1" style="display: none"/>
mais pourquoi inside position
il ne fonctionne pas?
Avez-vous essayé de mettre le onclick dans la balise d'entrée?
supprimer onclick de durée et de voir..
non, mais alors, je dois faire la saisie restituable (et il se casse la durée de l'élément)
Je crois filechose_button.cliquez sur() est de le faire. supprimer la .cliquez sur()
supprimer la filechose_button.cliquez sur() rend le bouton inopérant.
supprimer onclick de durée et de voir..
non, mais alors, je dois faire la saisie restituable (et il se casse la durée de l'élément)
Je crois filechose_button.cliquez sur() est de le faire. supprimer la .cliquez sur()
supprimer la filechose_button.cliquez sur() rend le bouton inopérant.
OriginalL'auteur static | 2013-04-30
Vous devez vous connecter pour publier un commentaire.
C'est à cause d'une sorte de propagation de l'évènement mess
Et
Démo: Violon
c'était ma suggestion, mais d'après les commentaires, j'ai pensé qu'il n'était pas possible pour vous
Merci beaucoup (y)
OriginalL'auteur Arun P Johny
C'est à cause de la propagation de l'évènement. Lorsque vous cliquez sur la durée, cliquez événement est déclenché et dans le gestionnaire de clic vous avez appelé cliquez sur input type="file"; il en est de l'appeler deux fois.
Si vous essayez de suivre le code qu'il ne soulèverait pas propagé événement.
Pour plus d'informations, visitez ce lien
Vous devez jouer avec cela pour obtenir plus de compréhension sur la propagation de l'évènement.
Bienvenue. Heureux de vous aider. 🙂
OriginalL'auteur Jenish Rabadiya
J'avais besoin d'utiliser "unbind cliquez sur" mon code fonctionne normalement.
OriginalL'auteur Genivan Silveira de Souza