Was wird zurückgegeben, wenn $ ('# id') mit nichts übereinstimmt? Ich dachte, es wäre null oder falsch oder etwas ähnliches, also habe ich versucht, es so zu überprüfen:
Aber das hat nicht funktioniert.
Was wird zurückgegeben, wenn $ ('# id') mit nichts übereinstimmt? Ich dachte, es wäre null oder falsch oder etwas ähnliches, also habe ich versucht, es so zu überprüfen:
Aber das hat nicht funktioniert.
Sie finden, wie viele Elemente wurden unter Verwendung abgestimmt:
$('selector').length
Um zu überprüfen, ob keine Elemente angepasst wurden, zu verwenden:
var item = $('#item');
if (item.length == 0) {
// ...
}
Ein jQuery-Objekt, das keine DOM-Knoten enthält.
sollten Sie in der Lage sein
var item = $('#item');
if (!item[0]){
...
}
für Ihre Existenzprüfung zu verwenden.
Ein Alias der Länge Attribut ist die Größe() -Methode . So könnte man im Grunde auch abfragen:
$ ("Selektor") size()
, um zu sehen, wie viele Elemente aufeinander abgestimmt sind..
Während $('selector').length
ist großartig für das Finden, wie viele Objekte Ihr Selektor übereinstimmt, ist es tatsächlich völlig unnötig. Die Sache mit jQuery ist, dass alle Selektor-basierten Funktionen intern die Länge verwenden, also könnten Sie einfach $(selector).hide()
(oder was auch immer) machen und es wird keine Aktion für einen leeren Satz ausgeführt.
Das ist normalerweise korrekt, aber hin und wieder muss man nur nach dem Vorhandensein eines Elements suchen. Guter Punkt obwohl, so +1 sowieso, da du in den meisten Fällen richtig bist. –
Ja, das ist der richtige Weg. Um die Frage zu beantworten, gibt sie jedoch ein Objekt/Array von DOM-Elementen zurück, die übereinstimmen. Und die Eigenschaft 'length' kann für jedes JavaScript-Objekt (Array, String, etc ...) verwendet werden, um seine Länge zu bestimmen (Anzahl Elemente, Anzahl Zeichen, etc ...). – KyleFarris
benutze einfach if (item.length) – redsquare