可能重复:
Is there an “exists” function for jQuery
jQuery determining if element exists on page
当tr不是元素时,if(tr)将返回true,如何检查它是否存在?
var tr = $('#parts-table .no-data').parent();
$('.delete', row).bind('click', function (e) {
that.delete(e.currentTarget);
});
console.log(tr);
if (tr) //returns true when it shouldn't发布于 2011-01-25 16:15:10
检查它的length属性:
if(tr.length) {
// exists
}if(tr)总是计算为真,因为jQuery对象或任何JavaScript对象都是真实的。
发布于 2011-01-25 16:26:40
我总是在JS文件的开头添加这个小jQuery片段
jQuery.fn.exists = function(){return jQuery(this).length>0;}这使用了这里许多人建议的方法,但也允许您访问是否存在这样的对象:
if ( $('#toolbar').exists() ){
$('#toolbar').load(..., function(){...});
//etc...
}发布于 2011-01-25 16:15:24
这是因为tr是一个jQuery对象,它是真实的(即使jQuery对象是空的)。改用if (tr.length),当length不是零时为真,当为零时为false。或者交替使用,if (tr[0]).
https://stackoverflow.com/questions/4795928
复制相似问题