12

如何检查 jQuery 中是否存在属性 ID?

我四处搜索,发现这应该可行:

if ($(this).attr('id').attr('id'))
{

}

我仍然收到此错误:TypeError: Object gauge1 has no method 'attr'

4

6 回答 6

22

这本身将起作用:

if($(this).attr("id"))

检查有关问题的现有 jsfiddle:http: //jsfiddle.net/rwaldron/wVqvr/4/

于 2012-09-27T16:15:48.253 回答
9

用老方法试试

if (this.id) { 
    //do something
}
于 2012-09-27T16:16:04.610 回答
7

您可以使用该is方法Has Attribute Selector

if ($(this).is('[id]')) {

}
于 2012-09-27T16:17:31.037 回答
2

if ($(this).attr('id')){ alert(id); }

于 2013-07-31T11:29:05.350 回答
0

你也可以只使用普通的 js 对象

if( this.id !== undefined && this.id.length > 0 ){
 //todo: use id
}
于 2012-09-27T16:16:27.567 回答
0

HTML:

<div class="hey"></div>
<div class="you" id="woah"></div>
<div id="results"></div>​

jQuery:

var id = $('div.hey').attr('id');
if (id) {
    // Have an id.
} else {
    // Don't have an id.
}

小提琴:http: //jsfiddle.net/NEVYT/

于 2012-09-27T16:19:53.657 回答