2013-05-06 1 views
0

사용자가 링크를 클릭 할 때 경고 메뉴에 데이터 ID가 표시되도록하려고합니다. 하지만 숫자 대신에 각 링크마다 0이 생깁니다.내 함수에서 데이터 ID를 선택하지 않는 이유는 무엇입니까?

Here is a JSFiddle of the issue

JS

$$('.postItem').addEvent('click', function(){ 
    var id = $('data-id'); 
    alert(+id); 
}); 

HTML

<a class="postItem" data-id="9" href="#">Number Nine</a> 

는 또한 데이터-ID를 선택 $$ 사용하여 시도했지만이 중 하나가 작동하지 않았다.

+0

몰라,하지만 POJS에 당신은 쓸 것 :'var에 ID를 = this.getAttribute ('data-id')'. – RobG

+0

jQuery에서는'$ (this) .data ('id')'또는'$ (this) .attr ('data-id')'가됩니다. – Barmar

+0

@RobG 당신의 순수한 JS 코드 만 받아 들일 수 있습니다. 고맙습니다. – joshuahornby10

답변

4

Mootools $은 id에 의해 mootools Element으로 변환됩니다. 그래서 귀하의 경우에 당신은 당신이 getAttribute 기능을 사용할 수 있도록 잘못, 귀하의 경우 data-id가 속성이다 사용 : Mootools의 약

http://jsfiddle.net/SGU8E/6/

$$('.postItem').addEvent('click', function(e){ 
    var el = e.target; 
    var id = el.getAttribute('data-id'); 
    alert(id); 
}); 
관련 문제