J'ai un système de téléchargement de fichier, une fois le bouton de téléchargement cliqué, le fichier est ensuite chargé via AJAX. Bien que le fichier soit téléchargé, je souhaite désactiver la fonction Cliquez sur le bouton "Sélectionner des images".
Actuellement, il s'agit de la fonction de clic sur le bouton de sélection de fichier: qui fonctionne bien, mais je veux désactiver la fonction de clic dans la phase d'avancement du XMLHTTPQUBEST, puis réactivé. Cliquez sur la fonction lorsque je reçois une réponse 200 du serveur. J'ai essayé quelque chose comme ça serait préférable: p> Bind () code> et
Unbind () code> et ça fonctionne bien en chrome, mais dans Firefox, au cours du téléchargement, le bouton ne peut pas être cliqué, ce que je veux , puis après avoir reçu une réponse du serveur, le bouton est reflétable, mais dans Firefox Deux fenêtres de dialogue de sélection de fichier ouvertes en même temps. C'est en raison de la fonction ci-dessus et de me lier la fonction à nouveau à l'aide de
Bind () code>. Est-ce que quelqu'un a des suggestions sur la manière d'activer, puis désactiver le bouton sans rentrer du code (fonction) de l'événement de clic. P>
$('#file-button').disable();
$('#file-button').enable();
4 Réponses :
Essayez attr code> jQuery fonction.
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#file-button").click(function(e)
{
e.preventDefault();
$(this).attr('disabled','disabled');
return false;
});
});
</script>
<input type="button" id="file-button" value="ClickMe" />
Cela ne fonctionne pas. La fonction de clic que j'ai dans mon code JavaScript remplace l'attribut désactivé car il écoute la fonction de clic.
Votre réponse mise à jour ne fonctionne pas non plus. Codepen
Vous pouvez regarder le codepen, je ne peux pas partager tout mon code, mais si vous regardez le CodePen, ce que je veux, c'est quelque chose à mettre sous la première fonction de clic qui le désactiverait, puis après la conversion désactivée. pour l'activer. Désolé si je n'ai pas de sens. > La fonction de clic est définie> La fonction de clic est désactivée> la fonction de clic est réactivée sans ré-régler la première fonction de clic.
Vous devez faire référence à un bouton d'entrée pour désactiver le bouton,
quelque chose comme ci-dessous p>
Cela ne fonctionne pas. La fonction de clic que j'ai dans mon code JavaScript remplace l'attribut désactivé car il écoute la fonction de clic. Et par la manière dont il n'est pas un bouton de soumission, c'est le bouton de sélection de fichier juste dans une balise code> (code>.
Désolé, ai-je essayé avec quoi?
sinon appelez-le par nom de classe
Désolé je ne comprends pas, pouvez-vous me donner un exemple de comment cela serait utilisé dans mon cas?
désactiver le bouton à l'aide de jQuery $ .prop () fonction:
$("#whatever-your-form-is").on('submit', function() { $('#file').trigger('click'); });
Je pense que vous avez une erreur logique avec cette ligne si ($ ($ (ceci) .is (': désactivé')) { code> Comment puis-je vérifier pour vous assurer que le désactivé est défini sur FALSE, pas vrai.
Vous avez raison. Édité pour le réparer. Il suffit d'ajouter un ! Code>:
si (! $ (Ceci) .is (': désactivé')) code>
Je l'ai réparé avec un peu de modification de votre code, jetez un coup d'œil à la solution dans ma question. Merci pour l'idée Eric!
J'ai préféré cette solution mais j'ai eu des problèmes avec la déclaration "si handicapée". Après le remplacer à cela, cela fonctionne: var attr = $ ("entrée [type = soumettre]"). Attr (désactivé "); Si (type d'attr == type d'indéfinie de || attr == false) { code>
J'ai changé ma fonction de clic initiale sur les éléments suivants: p> et je définit ce qui suit pour Désactiver le bouton P> $('#file-button').removeAttr('disabled');
J'ai utilisé cela aussi mais j'ai trouvé que le sinon code> était inutile / redondant.
Je devais déclencher un événement de clic sur #file code> lorsque le bouton
# fichier code> a été cliqué. Donc, la déclaration d'autre était nécessaire.
Cela ne fonctionne plus, veuillez vous reporter à ce lien: Stackoverflow.com / Questions / 15122526 / Désactiver-Bouton-Button-In-JQuer Y