Jquery cliquez sur vérifier plus proche de la case
Je suis en train d'utiliser un lien pour voir une case à cocher avec jQuery. Mon code HTML est:
<table>
<tr>
<td><input type="checkbox" value="test" /></td>
<td><a class="editbutton" href="#">edit</a></td>
</tr>
</table>
J'ai joué avec ce jquery:
jQuery('.editbutton').click(function($) {
jQuery(this).closest('[type=checkbox]').attr('checked', true);
});
Malheureusement, ce n'est pas de travail. Des idées?
Avez-vous déjà entendu parler de HTML Étiquettes? Ils le font sans JavaScript.
Poste en tant que réponse, je serais certainement upvote.
Je n'ai pas de contrôle sur la case ou bien sur le HTML en général, d'où le jQuery!
Poste en tant que réponse, je serais certainement upvote.
.closest()
semble le plus proche de l'ancêtre de l'élément. Vous avez besoin de faire un peu plus l'arbre transversal.Je n'ai pas de contrôle sur la case ou bien sur le HTML en général, d'où le jQuery!
OriginalL'auteur David Brooks | 2013-12-10
Vous devez vous connecter pour publier un commentaire.
Utilisation
.prop()
au lieu de.attr()
, Parce que.prop
est faite pour le réglage de laproperties
. Par le moyen du sélecteur est faux..closest()
va parcourir l'arborescence dom.Veuillez lire la suite pour plus d'référence :
.prop() .plus proche (le)
Essayer cela,
Ou comme @kappa suggéré.
DÉMO
prev
.J'ai juste pensé que, le branchement de
tr
auront besoin de plus de traversals. Suis-je la pensée droite.? Veuillez préciser.Sonne comme microoptimization pour moi. En s'appuyant sur prev est assez vulnérable - vous pouvez ajouter une autre cellule, entre les deux plus tard. Je ne dis pas que votre solution est fausse, juste ajouté une alternative.
pour de futures modifications. Grand point. Je vous remercie. Mis à jour en conséquence.
+1, excellente réponse, je vous souhaite de mettre en œuvre une activer / désactiver le vérifier de la fonction. c'est le point de case à cocher.
OriginalL'auteur Rajaprabhu Aravindasamy