일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Spring
- 자바스크립트
- 롤
- MSI
- jQuery
- 이메일인증
- 스프링
- mac jdk 설치
- 쿠버네티스
- oracle
- NoSQL
- jdk
- Python
- 리그오브레전드
- 마이바티스
- LOL
- 회원가입
- 데이터베이스
- tomcat
- 다국어처리
- 쿠버네티스 어나더 클래스
- Java
- 테이블
- k8s
- 롤토체스
- 파이썬
- SQL
- 알고리즘
- 롤토체스 꿀팁
- Database
- Today
- Total
웹쟁이의 일상
[Jquery] 선택한 요소의 부모(상위 요소) 선택하는법 본문
안녕하세요! 오늘은 JQuery를 이용한 요소 선택법에 대해 알아보겠습니다.
먼저 요소 선택을 할 샘플 테이블을 하나 만들어 보겠습니다.
굳이 테이블이 아니더라도 부모자식형제간의 관계가 있는 html코드면 무엇이든 가능합니다.
<table> <thead> <tr> <th id="soccer">축구</th> <th id="basket">농구</th> <th id="base">야구</th> </tr> </thead> <tbody> <tr> <td id="son">손흥민</td> <td id="jordan">조던</td> <td id="ryu">류현진</td> </tr> <tr> <td id="messi">메시</td> <td id="kobe">코비</td> <td id="ker">커쇼</td> </tr> <tr> <td id="thief">강두</td> <td id="ha">하승진</td> <td id="kim">김원중</td> </tr> </tbody> </table> <button id="btn" class="btn btn-white btn-info btn-bold">버튼</button>
<style> table { width: 50%; } table, th, td { border: 1px solid #bcbcbc; } </style>
테이블과 이벤트를 적용시킬 버튼을 하나 만들어 주었습니다.

부모 선택
1) .parent()
$(function () { $("#btn").on("click", function () { $("#thief").parent().css({ "background-color": "red" }); }); });
위의 스크립트를 작성해 주고 버튼을 누르면 thief라는 아이디를 가진 요소, 바로 상위tr의 css가 바뀌게 됩니다.

2) .parents()
$("#btn").on("click", function () { $("#thief").parents().css({ "background-color": "red" }); });
위 함수는 해당 요소의 모든 부모를 다 가져오는 것입니다.
그러니까 부모의 부모, 부모의 부모의 부모... 이렇게 다 가져오기 때문에 잘 쓰이지 않는다고 보시면 됩니다.

이런식으로 최상위 요소까지 피범벅이 되는 대참사를 맞이할 수 있습니다.
3) .parentsUntil()
$("#btn").on("click", function () { $("#son").parentsUntil("table").css({ "background-color": "red" }); });
위 함수는 선택한 요소의 부모 요소 중 함수에 선언한 선택자에 해당하는 요소 바로 전의 요소를 모두 선택합니다.
이때 선택자를 매개변수로 전달하지 않는다면 .parent() 메소드와 같이 모두가 피범벅이 되는 대참사를 맞이합니다.

4) .closest()
$("#btn").on("click", function () { $("#son").closest("tbody").css({ "background-color": "red" }); });
위 함수는 자신을 포함한 부모 요소 중 전달받은 선택자에 해당하는 요소의 집합에서 가장 첫 번째 요소를 선택합니다.
이 메소드가 요소의 집합을 구하는 방식은 .parents() 메소드와 비슷하지만, 해당 요소의 조상 요소뿐만 아니라 해당 요소 자신까지도 검사하는 점이 다릅니다.

여기까지 제이쿼리에서 해당 요소의 부모요소를 선택하는 법을 알아보았습니다.