2016-12-08 2 views
0

했다 요소의 ID를 가져옵니다 I HTML 요소의 문자열을 나타내는 다음과 같은 자바 스크립트 코드가 있습니다부트 스트랩 팝 오버 에드

html = '<tr>' + 
'<td class="editMap" data-mode="option" data-wsid="'+row.option_id+ 
'" data-map="'+row.mapping_id+'" id="option-'+row.option_id+'">'+ 
'<span title="Options Mapping" data-toggle="popover" data-placement="left"style="cursor:pointer;">'+value+ 
'</span></td>'+'</tr>'; 

html로 변수가 루프 내에서 실제로입니다. 나는이 특정 사업부의 세부 사항을 표시뿐만 아니라 팝 오버 코드

$('[data-toggle="popover"]').popover({ 
    html: true, 
    container: body, 

    content: function() { 
    return $('#popover-content').html(); 
    } 
}); 

<div id="popover-content" class="row" style="display:none;"> 
    <input class="btn btn-xs btn-info" type="submit" value="Yes" style="display: inline-block; vertical-align: top;"/> 
    <input class="btn btn-xs btn-primary" type="submit" value="No" style="display: inline-block; vertical-align: top;"/> 
</div> 

내가 원하는 것은 실제로 으로 표시이 경우 ''옵션 -이다 popovered 된 요소의 ID를 얻을 수 있습니다 + row.option_id + ' ". 다음을 시도했지만 작동하지 않는 것 같습니다.

$('[data-toggle="popover"]').each(function() { 
    $(this).popover({ 
    html : true, 
    content: this.id, 
    console.log(this.id); 
    }); 
}); 

ID를 얻는 데 도움주세요. 초급 질문 일 수도 있지만 자바 스크립트를 처음 사용했습니다

+1

시도'$ (이) .attr ('ID')' – prasanth

+0

는'this'가에 대한 참조가'DOM element' 곳'$ (이) '는 jquery 객체입니다. – RonyLoud

답변

1

this 대신 $(this)을 사용하여 현재 요소에 액세스해야합니다.

$('[data-toggle="popover"]').each(function() { 
     //try doing console log out of popover. 
     console.log($(this).attr('id')); 
     $(this).popover({ 
         html : true, 
         content: $(this).attr('id') 
        }); 
}); 
0

$()은 jQuery 생성자 함수입니다.

은 호출의 DOM 요소에 대한 참조입니다.

$(this)에서 $()this을 매개 변수로 전달하기 만하면 jQuery 메서드 및 함수를 호출 할 수 있습니다.

그래서, 당신의 코드는 다음과 같이 표시됩니다

$('[data-toggle="popover"]').each(function() { 
    $(this).popover({ 
     html : true, 
     content: $(this).attr('id'), 
     console.log(this.id); 
    }); 
});