2011-08-03 2 views
1

J'ai une page où j'ai beaucoup de contrôles, puis j'ai un élément div et j'ai 10 boutons ASP dans cet élément div.Meilleure façon de lier l'événement dans jquery

Je veux lier l'événement mousehover uniquement aux boutons qui se trouvent dans l'élément div.

Actuellement im faire comme:

<script src="jquery-1.6.2.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     $(document).ready(function() { 
      $("#MangoPager_btn1").hover(mousehoverfunction); 
      $("#MangoPager_btn2").hover(mousehoverfunction); 
      $("#MangoPager_btn3").hover(mousehoverfunction); 
      $("#MangoPager_btn4").hover(mousehoverfunction); 
      $("#MangoPager_btn5").hover(mousehoverfunction); 
      $("#MangoPager_btn6").hover(mousehoverfunction); 
      $("#MangoPager_btn7").hover(mousehoverfunction); 
      $("#MangoPager_btn8").hover(mousehoverfunction); 
      $("#MangoPager_btn9").hover(mousehoverfunction); 
      $("#MangoPager_btn10").hover(mousehoverfunction); 
     }); 
</script> 

Est-il possible de jquery afin que je puisse déclarer une liste des boutons ids quelque chose comme [MangoPager_btn10,MangoPager_btn2,MangoPager_btn3] pour que je ne dois pas le faire pour chaque bouton id.

J'ai essayé avec le type input mais j'applique la fonction pour tous les objets de type d'entrée, pas pour les boutons qui sont dans le div elemet.

Toute autre façon bettrer de le faire en jquery .... Je

Répondre

1

Essayez ceci:

$(function(){ 
    $("[id^='MangoPager_btn']").hover(mousehoverfunction); 
}) 
0

$ ("bouton # de MangoPager") vol stationnaire (mousehoverfunction). Liez la fonction à la div parente, puis à tous les boutons comme ceci:

En supposant que MagoPager est l'id de la div parente.

ou

$ ("# entrée MangoPager [type =]") vol stationnaire (mousehoverfunction).

0

essayer quelque chose comme ceci:

$(".containerclass input[type=submit]").hover(mousehoverfunction); 

cela lie la fonction à tous les boutons dans une classe d'esprit de récipient (css) = "containerclass"

1
$('#DivElementId input').hover(mousehoverfunction); 
1

Vous pouvez simplement donner une classe aux entrées désirées:

$(".mouse-over").hover(mousehoverfunction); 

ou si vous avez seulement quelques ids:

$("#MangoPager_btn1, #MangoPager_btn2, #MangoPager_btn3").hover(mousehoverfunction); 
0

Dans ce cas, je utiliser les filtres http://api.jquery.com/filter/ avec regexp

$("input").filter(function() 
{ 
return /MangoPager_btn/.test(this.id) 
}).hover(mousehoverfunction); 
Questions connexes