J'ai ce code dans ng-repeat:
<a href="#" class="disabled" ng-click="doSomething(object)">Do something</a>
Comment faire en sorte que le bouton soit désactivé alors qu'il l'a fait class="disabled"
?
Ou y a-t-il un moyen de le faire en Javascript pour que cela ressemble à:
$('.do-something-button').click(function(){
if (!$(this).hasClass('disabled')) {
do something
}
});
la source
||
devrait être&&
, bien que cela fonctionne dans votre plunk, si isDisabled est une méthode, les doubles tuyaux continuent de vérifier une expression valide. Ce n'est pas le cas avec&&
isDisabled()
retourne false, aucun neaction()
sera appelé, et la vérification de "pour une expression valide" ne se poursuit pas.Nous pouvons ajouter un événement ng-click de manière conditionnelle sans utiliser de classe désactivée.
HTML:
la source
J'utilise l'expression && qui fonctionne parfaitement pour moi.
Par exemple,
Si la valeur
vm.slideOneValid
est false, la deuxième partie de l'expression n'est pas déclenchée. Je sais que cela met la logique dans le DOM, mais c'est un moyen rapide et sale de désactiver ng et de ng-cliquer pour placer nice.N'oubliez pas d'ajouter ng-model à l'élément pour que ng-disabled fonctionne.
la source
En gros, il
ng-click
vérifie d'abordisDisabled
et en fonction de sa valeur, il décidera si la fonction doit être appelée ou non.OU lisez-le comme
la source
Vous pouvez essayer d'utiliser
ng-class
.Voici mon exemple simple:
http://plnkr.co/edit/wS3QkQ5dvHNdc6Lb8ZSF?p=preview
Le statut est un attribut personnalisé de l'objet, vous pouvez le nommer comme vous le souhaitez.
Le
disabled
inng-class
est un nom de classe CSS, leobject.status
devrait êtretrue
oufalse
Vous pouvez changer l'état de chaque objet en fonction
disableIt
.Dans votre contrôleur, vous pouvez faire ceci:
la source
J'ai également eu ce problème et j'ai simplement découvert que si vous supprimez simplement le "#", le problème disparaît. Comme ça :
la source
href
ne doit pas être utilisé, utilisez à lang-href
place.ng-href
n'est nécessaire que lorsque vous devez calculer le chemin de manière dynamique. Si le chemin ne change jamais,href
c'est bien.