2010-03-10 6 views
2

Dans ASP.NET CheckBoxList est-il possible de déterminer si une case particulière est cochée avec jquery? J'ai besoin de savoir si "Tout" est coché par exemple, soit par valeur ou par texte d'étiquette.jquery checkboxlist élément particulier

 <asp:CheckBoxList ID ="ToyotaModels" runat="server">  
       <asp:ListItem Value = "0">Corolla<asp:ListItem> 
       <asp:ListItem Value = "1">Matrix<asp:ListItem> 
       <asp:ListItem Value = "2">Tundra</asp:ListItem> 
       <asp:ListItem Value = "3">Prius</asp:ListItem> 
       <asp:ListItem Value = "4">All</asp:ListItem> 
     </asp:CheckBoxList> 
+0

Nous avons besoin de connaître la sortie HTML du CheckBoxList. – Jeremy

+2

Je ne sais pas comment cela fonctionne avec asp, mais dans jQuery vous pouvez vérifier si un élément est vérifié en appelant is (": checked") comme dans $ ("li [value = '4']"). ": checked") –

+0

Un jour, je comprendrai ce que ces étiquettes bizarres signifient, et pourquoi elles sont utilisées. – karim79

Répondre

1

Cela devrait obtenir les cases cochées sur un clic:

$('input:checked').click().each(function() { 
      //process the checkbox stuff here.. 
}); 

EDIT: basé sur le commentaire

function processChecks() 
{ 
    $('input:checked').each(function() 
    { 
    alert($(this).val(); 
    }); 
}; 
+0

Merci pour votre réponse. Cependant, ce n'est pas un gestionnaire d'événement click. Je pensais faire quelque chose comme ça, dans la boucle 'input: checked', savoir si un élément particulier est l'un des vérifiés. Se demandait juste s'il y a une façon plus élégante de le faire, peut-être dans un seul sélecteur? – Victor

+0

donc probablement sortir simplement le .click() de cela (à l'intérieur de tout ce qui vous incite le comportement dont vous avez besoin) $ ('input: checked'). Each (function() { // traiter la case à cocher ici. }); –

+0

Merci. Cela a fonctionné: $ ('# <% = ToyotaModels.ClientID%> input: checked'). Each (function(). – Victor

1

Vous devez regarder le code HTML généré par CheckboxList d'ASP.NET. L'ID du conteneur pour les entrées qui sont les cases à cocher va ressembler à ceci en javascript:

<%= ToyotaModels.ClientID %> 

Chaque entrée de case à cocher a _X ID ajouté à la X est la case numérique. Donc, pour savoir si le premier élément (Corolla) est cochée, vous pouvez le faire:

$('<%= "#" + ToyotaModels.ClientID + "_0" %>').is(":checked") 
0

jQuery vous avez .est (« : coché ») fonction qui devrait faire l'affaire.

Questions connexes