jQuery Ermitteln Sie, ob eine übereinstimmende Klasse eine bestimmte ID hat
Was ist jQuery-id entspricht der folgenden Aussage zu?
$('#mydiv').hasClass('foo')
so könnte man eine Klasse Namen und überprüfen Sie, dass es enthält eine id geliefert.
etwas wie:
$('.mydiv').hasId('foo')
InformationsquelleAutor der Frage Nicholas Murray | 2010-02-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Backen Sie die Logik in den Selektor durch die Kombination mehrerer Selektoren. Wir könnten zum Beispiel Ziel alle Elemente mit einer bestimmten id, dass auch eine bestimmte Klasse:
Dies sollte ähnlich Aussehen wie etwas, was du schreiben würdest, in CSS. Beachten Sie, dass es nicht für alle gelten
#foo
Elemente (obwohl es sollte nur eins sein), und gilt dies nicht für alle.bar
Elemente (obwohl es viele). Es wird nur die Referenz Elemente, die sich auf beide Attribute.jQuery hat auch eine große
.ist
Methodemit der Ihr bestimmen, ob ein element hat bestimmte Eigenschaften. Sie können testen, einer jQuery-collection gegen eine string-Selektor, der ein HTML-Element, oder ein anderes jQuery-Objekt. In diesem Fall werden wir prüfen, es gegen ein string selector:InformationsquelleAutor der Antwort Sampson
Ich würde wahrscheinlich
$('.mydiv').is('#foo');
sagte, Dass, wenn Sie wissen, die Id, warum wouldnt Sie nur anwenden, um die Wähler in den ersten Platz?InformationsquelleAutor der Antwort prodigitalson
Lassen Sie uns sagen, dass Sie sind, Durchlaufen einige DOM-Objekte, und Sie wollen zu finden und zu fangen ein element mit einer bestimmten ID
Können Sie entweder so etwas schreiben zu finden
Beachten Sie, dass wenn Sie verwenden ein class-Selektor, die find-Methode gibt alle der übereinstimmenden Elemente.
oder Sie schreiben eine Iteration der Funktion, die die weiterführende Arbeit
Gleichen code kann problemlos geändert werden, für die Klassen-Selektor.
Ich bin froh, dass du dein problem gelöst mit index(), was auch immer für Sie arbeitet.Ich hoffe das hilft anderen mit dem gleichen problem. Prost 🙂
InformationsquelleAutor der Antwort Nima Foladi
InformationsquelleAutor der Antwort Pointy
Nur sagen, dass ich letztendlich das Problem gelöst mit index().
NICHTS anderes schien zu funktionieren.
Damit für Geschwister-Elemente ist dies ein guter work-around, wenn Sie sind die erste Auswahl durch eine gemeinsame Klasse und wollen dann ändern Sie etwas anders für jede spezifische.
EDIT: für diejenigen, die nicht wissen (wie ich) - index() gibt ein index-Wert für jedes element, das entspricht dem Selektor, das zählen von 0, je nach Ihrer Reihenfolge in der DOM. Solange Sie wissen, wie viele Elemente gibt es mit class="foo" Sie brauchen nicht eine id.
Offensichtlich wird das nicht immer helfen, aber könnte jemand es nützlich finden.
InformationsquelleAutor der Antwort Stella
Könnte man auch prüfen, ob das id-element wird verwendet, indem man so tut:
Ich benutze diese Methode für Globale Datentabellen und spezifische bestellt dataTables
InformationsquelleAutor der Antwort user3379167