如果我这样做 -
alert(anchor);
我明白了 -
“[object HTMLLIElement]”
...好吧,是的,这是我想要的元素。所以我想获得那些元素ID。
所以我测试它是这样的:
alert(anchor.attr("id"));
...但我没有得到任何警报,没有。我不能选择一个元素。我做错了什么,我不理解什么?
答案 0 :(得分:8)
有两个问题:
.attr()
是jQuery对象的函数,你有一个DOM元素(你需要$(anchor)
来对元素使用jQuery方法。).id
property会起作用(而且要快得多),就像这样: alert(anchor.id);
答案 1 :(得分:3)
那是因为attr
不是anchor
上定义的方法或属性。 anchor
是原始HTML元素对象。它不是一个jQuery对象(我假设你使用的是jQuery,因为你使用了attr
方法)。
要获取ID,您只需anchor.id
即可。如果确实希望使用attr
,您可以执行jQuery(anchor).attr("id")
。
答案 2 :(得分:3)
如果你正在使用jquery,那么你需要这个:
alert($(anchor).attr("id"));
答案 3 :(得分:2)
attr()
函数是jQuery的一部分,但是你试图从一个普通的DOM对象中获取它。您要么使用$(anchor)
(在jQuery中包装元素),要么调用anchor.getAttribute("id")
。