2010-12-02 5 views

Répondre

1

Vous pouvez simplement arrêter la propagation (événement bouillonnement) avec .stopPropagation(), comme ceci:

$("a :button").click(function(e) { 
    e.stopPropagation(); 
}); 
0

Si je comprends bien, vous avez quelque chose comme ça:

<a ...> 
    <button onclick="..."></button> 
</a> 

Et vous n » Je veux exécuter le lien sur l'étiquette? Vous pourriez écrire:

<a href="javascript:void(0)"></a> 

Mais pourquoi avez-vous un bouton dans un lien?

+0

s'il y a un bouton dans un lien, lorsque vous cliquez sur le bouton, je veux désactiver le lien, mais excutez le lick buttun. Comment faire? – user525542

0

Si vous ajoutez un onclick="return false;" à votre lien (je suppose qu'il s'agit d'une ancre <a>), vous pouvez supprimer la navigation. Comme si:

<a href="/gosomewhere.html" onclick="return false;"> 
    <button onclick="alert('no navigating!');">Button</button 
</a> 

Aucune jQuery nécessaire à moins que vous ne pouvez pas changer le lien généré.

+0

Cela empêcherait n'importe quoi d'utiliser le lien (pourquoi l'avoir?) Le comportement 'return false' devrait être sur le bouton à la place. –

+0

mais si je clique sur d'autres endroits, sauf le bouton, le lien fonctionne – user525542

+0

Eh bien, l'affiche ne devrait pas avoir un bouton dans un lien de toute façon ... –

Questions connexes