<ul id ="myList">
<li><a href="www.example.com">link</a></li>
</ul>
jQuery를 사용하여 ul (myList)의 ID를 어떻게 얻을 수 있습니까? 링크를 클릭하면 내 j-script 이벤트가 트리거됩니다. 나는 시도했다 :
$(this).parent().attr('id');
그러나 그것은 li의 id를 얻습니다. 나는 더 높은 곳으로 가야하고 li에도 클릭을 붙일 수 없습니다.
답변
$(this).parent().parent().attr('id');
부모의 부모 ID를 얻는 방법입니다.
편집하다:
$(this).closest('ul').attr('id');
귀하의 케이스에 대한보다 완벽한 솔루션입니다.
답변
$(this).closest('ul').attr('id');
답변
다음은 3 가지 예입니다.
$(document).on('click', 'ul li a', function (e) {
e.preventDefault();
var example1 = $(this).parents('ul:first').attr('id');
$('#results').append('<p>Result from example 1: <strong>' + example1 + '</strong></p>');
var example2 = $(this).parents('ul:eq(0)').attr('id');
$('#results').append('<p>Result from example 2: <strong>' + example2 + '</strong></p>');
var example3 = $(this).closest('ul').attr('id');
$('#results').append('<p>Result from example 3: <strong>' + example3 + '</strong></p>');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul id ="myList">
<li><a href="www.example.com">Click here</a></li>
</ul>
<div id="results">
<h1>Results:</h1>
</div>
도움이되었는지 알려주세요.