Ich versuche, die Anzahl der Optionen in einer Liste zu zählen. Einige der Optionen wurden jedoch aufgrund des in ein Eingabefeld eingegebenen Suchtextes ausgeblendet.Zählen Sie die Anzahl der Optionen in einer Liste
Ich begann mit der Suche nach .size() und .length, bekam aber nur die vollständige Liste und nicht die, die nicht versteckt waren. Um zu vereinfachen, habe ich es geändert, um zu versuchen, die versteckten Optionen zu finden (ich kann verwenden: nicht später).
$('#txtListSearch').keyup(function(evt) {
if($(this).val().length < 1) {
$('#selContactLists option').show();
} else {
$('#selContactLists option:not(:contains("' + $(this).val() + '"))').hide();
if($('#selContactLists').size()) {
$('#selContactLists option:contains("' + $(this).val() + '")').first().attr('selected', 'selected');
} else {
}
}
console.log($('#selContactLists option').filter(':hidden'));
});
Ich habe auch versucht: console.log ($ ('# selContactLists Option: versteckt')); Ich bekomme nie die Nummer, die ich erwarte. Kann jemand sehen, wo ich falsch liege?
Noch seltsamer ist, dass, wenn ich die "Größe" der Auswahl ändern, so dass mehr als ein Element standardmäßig angezeigt wird, auf Chrome nie eine der Optionen versteckt.
können Sie auch ein HTML-Beispiel posten? – Stefan
Side-Note auf 'size()', weil du es gefunden hast. Es wurde markiert. Aus der Dokumentation: 'Die .size() -Methode entspricht funktionell der Eigenschaft .length; Die .length-Eigenschaft wird jedoch bevorzugt, da sie nicht den Overhead eines Funktionsaufrufs hat. "(http://api.jquery.com/size/) – Nope
Auf welcher Basis verbergen oder zeigen die Optionen? –