我必须在DOM中找到一个元素,如果元素退出jquery函数应该返回false。我可以这样做吗? 我确实喜欢这个,但不起作用。 if($('。myclass')。find('#id')== true)return false;
答案 0 :(得分:1)
您可以检查jQuery集合的length
属性。
if ($('.myclass #id').length) {
return false;
}
答案 1 :(得分:1)
通常,带有选择器的jQuery函数返回一个类似于数组的jQuery对象 - 您可以检查其.length
属性以查看匹配的元素数量。
if ($('.myclass').find('#id').length > 0) return false
答案 2 :(得分:1)
使用length
属性:
if($('.myclass #id').length > 0) { return false };
答案 3 :(得分:1)
听起来您只想查看具有给定ID的元素是否已存在。如果是这样,那么您可以执行以下操作
var alreadyExists = $('#theId').length() > 0;
答案 4 :(得分:0)
if ($(...).size()) {
return false;
}
答案 5 :(得分:0)
更进一步,你总是可以为它设计一个jQuery方法。
$.fn.exists = function () {
return this.length > 0;
};
// use it like this
var foo = $('#bar');
if (foo.exists()) {
// do backflips
}
我知道,也许有点过分了。你的里程会有所不同。但我个人认为,每次我反复检查时,它都比.length > 0
更具可读性。
正如亚历克斯指出的那样,你也可以使用普通的.length
来检查 truthy-ness ,这也可以完美地运作。如果您正在寻求简洁,请为您节省一个函数调用开销。