我需要一个对象是否存在其选择页面上的布尔值。检查其选择存在的对象,返回与jQuery或Javascript
这通常会做到这一点:
startpageentry = $('#' + startpageid)
但是,这并不返回任何东西。我需要一个布尔值,我可以放入,如果这样的语句:
如果{}
我怎样才能做到这一点(startpageentry =“假”!)?
我需要一个对象是否存在其选择页面上的布尔值。检查其选择存在的对象,返回与jQuery或Javascript
这通常会做到这一点:
startpageentry = $('#' + startpageid)
但是,这并不返回任何东西。我需要一个布尔值,我可以放入,如果这样的语句:
如果{}
我怎样才能做到这一点(startpageentry =“假”!)?
有针对,因为它会阻止链接的布尔值。
您可以使用$(something).length>0
。
但是如果你需要在一遍又一遍地跑,我做了一个小的jQuery插件被称为doesExist()
/* doesExist PLUGIN (c) MS */
/* (c) Michael Stadler(MS), */
(function($){
$.fn.doesExist = function()
{
return jQuery(this).length > 0;
};
})(jQuery);
它的用法是
if($('#something').doesExist()){
//doesExist returns a boolean
}
使用length
:
var startpageentry = $('#' + startpageid).length;
要保存布尔结果,使用:
var isPresent = $('#' + startpageid).length > 0;
现在,如果它存在false
否则isPresent
将是真实的。
或者干脆:
if ($('#' + startpageid).length){
// exists
}
else {
// does not exist
}
取得布林与jQuery ...
var startpageentry = !! $('#' + startpageid).length;
没有jQuery的...
var startpageentry = !! document.getElementById(startpageid);
当然,你不真的需要一个布尔值来测试它。你可以只依靠0
为falsey(对于jQuery版本)或null
是falsey(对于非jQuery版本)。
此外,您但这并不返回任何是不正确的。它会返回对返回的jQuery对象的引用。 JavaScript中的对象始终是truthy,因此,在条件中测试它并不会告诉您选择器是否匹配任何元素。
请参见http://计算器。 com/questions/299802 /你怎么做检查,如果一个选择器存在于jquery – 2012-03-06 07:41:38
是'假'是一个错字?你应该比较假,而不是'假'。或者,如果你知道它是一个布尔值,你应该比较!== false。 (或者只是!startpageentry) – Corbin 2012-03-06 07:44:53