如果$('#id')不匹配任何内容,会返回什么?我认为这将是空或虚假或类似的东西,所以我试着检查像这样:
var item = $('#item');
if (!item){
...
}
但这并没有奏效。
如果$('#id')不匹配任何内容,会返回什么?我认为这将是空或虚假或类似的东西,所以我试着检查像这样:
var item = $('#item');
if (!item){
...
}
但这并没有奏效。
您可以使用多少个元素相匹配:
$('selector').length
要检查没有任何元素是否匹配,使用:
var item = $('#item');
if (item.length == 0) {
// ...
}
一个不包含DOM节点的jQuery对象。
您应该能够使用
var item = $('#item');
if (!item[0]){
...
}
你的存在性检查。
长度属性的别名是大小()方法。所以,你基本上也可以查询:
$( “选择”),大小()
,看看有多少元素相匹配。
虽然$('selector').length
非常适合查找您的选择器匹配多少个对象,但它实际上完全不需要。关于jQuery的一点是,所有基于选择器的函数都在内部使用长度,因此您只需执行$(selector).hide()
(或其他任何操作),并且不会对空集执行任何操作。
是的,这是正确的方法。但是,要回答这个问题,它会返回一个匹配的DOM元素的对象/数组。 'length'属性可用于任何javascript对象(数组,字符串等)来确定它的长度(num元素,num字符等等)。 – KyleFarris 2009-05-24 19:06:01
只用if(item.length) – redsquare 2009-05-24 19:26:49