检查元素是否存在

可能重复:
有没有jQuery的“存在”功能
jQuery确定页面上是否存在元素

if(tr)在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

检查其length属性:

if(tr.length) {
    // exists
}

if(tr)总是评估为真,因为一个jQuery对象或任何JavaScript对象,总是很真实。


我总是在我的JS文件的开头添加这个小小的jQuery代码片段

jQuery.fn.exists = function(){return jQuery(this).length>0;}

这里使用了许多这里建议的相同方法,但是它也允许您访问是否存在像这样的对象:

if ( $('#toolbar').exists() ){
    $('#toolbar').load(..., function(){...});
    //etc...
}

这是因为tr是一个jQuery对象,它是真实的(即使jQuery对象是空的)。 使用if (tr.length)代替,当length不为零时为true,当为零时为false。 或者, if (tr[0])

链接地址: http://www.djcxy.com/p/14673.html

上一篇: Check if element exists

下一篇: Check if a div exists with jquery