>

내부 div에서 ID를 얻는 방법. 클래스 컨트롤이있는 많은 div가 있지만 부모 div ID를 얻고 싶습니다. 얻는 방법?

http://jsfiddle.net/cngt2ef6/7/

$(".getid").click(function() {
   alert($(this).closest('div').hasClass("control).attr("id"))
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="control" id="spa">
  Content
</div>
<div class="control" id="test">
  <div class="method">
    <a href="#" class="getid">Getid</a>
  </div>
</div>
<div class="control" id="awesome">
  Content
</div>

  • 답변 # 1

    문제는 다음에서 비롯됩니다 :

    <올>

    와이즈 비즈  첫 번째 부모 closest 를 반환하는 선택기  (여기서는 무엇이 필요하지 않습니다).

    div 요소에 지정된 클래스가 있는지 여부에 따라 부울을 반환하므로 (귀하의 경우 첫 번째 부모에게는 주어진 클래스 hasClass() 가 없습니다. )

    control 를 사용하는 대신  당신은 hasClass() 를 사용해야합니다   class 에서 직접 선택기  다음과 같은 방법 :

    closest()
    
    

    $(this).closest('div.control').attr("id");
    
    

    $(".getid").click(function() {
      console.log($(this).closest('div.control').attr("id"));
    })
    
    

  • 답변 # 2

    와이즈 비즈 외에  -첫 번째 단일 노드 부모를 반환합니다-이미 언급 한 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="control" id="spa"> Content </div> <div class="control" id="test"> <div class="method"> <a href="#" class="getid">Getid</a> </div> </div> <div class="control" id="awesome"> Content </div> Js:  하지만이 경우 요소/클래스/ID가 타겟팅 된 여러 노드를 반환합니다.

    closest() 의 대안 일뿐입니다  이 경우 시나리오

    parents()
    
    

    closest()
    
    

    $(".getid").click(function() { console.log($(this).parents('.control').attr("id")) })

관련 자료

  • 이전 tensorflow - 영어 단어 포함에서 비 영어 단어 포함
  • 다음 python - Keras를 사용하여 문자 메시지에서 유용한 값 선택