¿Qué se devuelve si $ ('# id') no coincide con nada? Pensé que sería nulo o falsa o algo similar, así que traté de comprobar de este modo:
var item = $('#item');
if (!item){
...
}
Pero eso no funcionó.
¿Qué se devuelve si $ ('# id') no coincide con nada? Pensé que sería nulo o falsa o algo similar, así que traté de comprobar de este modo:
var item = $('#item');
if (!item){
...
}
Pero eso no funcionó.
puede encontrar cuántos elementos fueron comparados usando:
$('selector').length
Para comprobar si hay elementos fueron agrupados, utilice:
var item = $('#item');
if (item.length == 0) {
// ...
}
Objeto jQuery que no contiene nodos DOM.
Usted debe ser capaz de utilizar
var item = $('#item');
if (!item[0]){
...
}
para su verificación existencia.
un alias del atributo de longitud es el método size() . Así que, básicamente, también se puede consultar:
$ ("selector") size()
para ver cuántos elementos están apareadas..
Mientras que $('selector').length
es ideal para descubrir cuántos objetos coincide su selector, es realmente completamente innecesario. Lo que pasa con jQuery es que todas las funciones basadas en el selector usan la longitud internamente, por lo que puede hacer $(selector).hide()
(o lo que sea) y no toma ninguna acción para un conjunto vacío.
Eso suele ser correcto, pero de vez en cuando solo necesita verificar la existencia de un elemento. Buen punto, así que +1 de todos modos, ya que es correcto para la mayoría de los casos. –
Sí, esta es la forma correcta. Sin embargo, para responder la pregunta, devuelve un objeto/matriz de elementos DOM que coinciden. Y la propiedad 'longitud' se puede usar en cualquier objeto javascript (matriz, cadena, etc.) para determinar su longitud (elementos num, num caracteres, etc ...). – KyleFarris
simplemente use if (item.length) – redsquare