确定 jQuery 是否没有找到任何元素

我使用的是 jQuery 的选择器,特别是 id 选择器:

$("#elementId")...

我应该如何确定 jQuery 是否已经找到了元素? 即使指定 id 的元素不存在,下一个语句给我: [object Object]

alert($("#idThatDoesnotexist"));
92112 次浏览

所以你的 If判断语句应该是:

if($('#id').length) { /* code if found */ } else { /* code if not found */ }

You're getting an object returned from that alert because jQuery (almost) always returns the "jQuery object" when you use it, which is a wrapper for the elements jQuery's found that permits method chaining.

Futuraprime 是正确的,但是您可以通过以下操作来缩短语法:

if ($("#id").length) {
//at least one element was found
} else {
//no elements found
}
!$.isEmptyObject($.find('#id'))

如果元素存在,返回 true; 如果不存在,返回 false。

$('#my_selector').length > 0
$('#my_selector').get(0) !== undefined
$('#my_selector')[0] !== undefined

这是最基本的,现在做你想做的。