BLOG main image
분류 전체보기 (313)
교육 (13)
NEIS (6)
Edufine (0)
Programmer (5)
Android Programming (1)
Internet W3 (18)
JAVA Programming (9)
JSP/Servlet (1)
Framework (7)
Spring For Beginner (4)
eGovFrame (10)
MEAN Stack (2)
NodeJS (5)
SublimeText (30)
SublimeText_Tips (18)
Eclipse (16)
JavaScript (8)
jQuery (12)
jQuery_tips (1)
Ajax (3)
DWR(Direct Web Remote) (4)
JSON(JS Object Notation) (4)
Oracle (2)
MySQL (28)
OS (16)
Download (3)
Life (10)
Favorit Site (1)
Books (2)
Healthy (1)
Stocks (1)
HTML5/CSS (1)
Python (4)
Security (7)
CISSP (0)
Ruby On Rails (5)
일기장 (0)
영어 교과서(중2) (3)
알고리즘 (0)
Go Lang (3)
VB 2010 (12)
C# (1)
정보보안기사(네트워크보안) (0)
업무 활용 엑셀 (11)
틈틈이 활용팁 (14)
하루 하루 살아가며 ……. (2)
기술 (1)
파이썬 & 데이터분석 (1)
Visitors up to today!
Today hit, Yesterday hit
daisy rss
tistory 티스토리 가입하기!
2015. 7. 9. 17:19

체크박스가 많이 나오는 UI 화면을 만들어야 하는데 JQuery를 이용해보았다.

하면서 막힌것이 두개가 있었는데 하나가 checkbox이고 또 다른 하나가 style바꾸는것이었다.

첫째 특정 div내의 checkbox만 구하기!

내가 만들 구조는 이렇게 되어있다.

<div id="km">

.. checkbox 수두룩~

</div>

<div id="bbs">

.. checkbox 수두룩~

</div>

자 그럼 km안에 있는 checkbox만 어떻게 선택할 수 있을까?

$("input:checked") 이렇게 체크박스된것을 가져올수도 있지만..

문제는 그럼 bbs안에 녀석도 선택이 되는데?

이럴땐 해당 id 이름으로 찾은후 checkbox를 찾는거다

$("#km input:checked") 이렇게 하면 km안의 div 있는 checkbox만 가져올 수 있다.

문제는 동적으로 divid가 가져올 수 있으니.. 실제는 이렇게 처리하였다.

function allCheckboxCheck(id, divid) {

var word;

if ($(id).is(':checked')) {

$(divid + " input:checkbox").attr("checked", "checked");

word = "해제";

} else {

$(divid + " input:checkbox").attr("checked", "");

word = "선택";

}

$("#result").text(word);

}

위에서 attr은 attribute를 뜻하고 checked속성을 checked하거나 아님 없애주는 역할을 한다.

그리고 if ( $( id ).is(':checked')) 말은 말 그대로 checkbox가 checked이냐라는 것을 묻고 있다.

웹을 검색하다 보면 아래와 같은 표를 볼수 있는데 이게 핵심되겠다!!

jQuery가 지원하는 CSS 셀렉터들

셀렉터 설명
* 모든 요소와 일치
E1 E1(태그명)인 모든 요소와 일치
E1.class E1(태그명) 요소의 클래스가 class와 동일한 요소와 일치
E1.#id E1(태그명) 요소의 id 어트리뷰트 값이 id와 동일한 요소와 일치
E1 E2 E1 요소의 자식인 모든 E2(태그명) 요소와 일치
E1 > E2 E1 요소 바로 아래 자식인 E2 요소와 일치
E1 + E2 E1 요소의 바로 다음에 나오는 형제요소 E2와 일치
E1 ~ E2 E1 요소의 다음에 나오는 모든 형제 E2와 일치
E1[attr] attr 어트리뷰트를 갖는 E1 요소와 일치
E1[attr=val] attr 어트리뷰트의 값이 val을 갖는 E1 요소와 일치
E1[attr^=val] attr 어트리뷰트의 값이 val 값으로 시작하는 E1 요소와 일치
E1[attr$=val] attr 어트리뷰트의 값이 val 값으로 끝나는 E1 요소와 일치
E1[attr*=val] attr 어트리뷰트의 값이 val 값을 포함하는 E1 요소와 일치

즉 div 밑에 다른 요소를 체크하는 것이니 E1 E2를 쓰면 되는것~

둘째 style 바꾸기

div를 한번에 다보여주는 것이 아니라 km 보여줄때에는 bbs는 안보여야하고

반대로 bbs가 보여줄때는 km이 안보여줘야 한다고 하면 어떻게 하면 될까?

이때 중요한것이 어떻게 css를 먹이느냐 인데 css 속성을 이용하면된다.

$('#km').css('display','none');

$('#km').css( {display:none, 키:밸류로 중복해서 주루루루~});

실제로는 아래처럼 이용하였다. 참고로 이미지인 img 태그의 경로를 바꾸기 위해선 attribute인 str을 다른녀석으로 바꿔주면 된다

function showDiv( target)

{

if ( target == "km")

{

$('#km').css('display','block');

$('#bbs').css('display','none');

$("#Image1").attr('src','/kms/images/cyberdigm/custom/lgoil/subscribe/Tab_on_01.jpg');

$("#Image2").attr('src','/kms/images/cyberdigm/custom/lgoil/subscribe/Tab_off_02.jpg');

}

else if ( target == "bbs")

{

$('#km').css('display','none');

$('#bbs').css('display','block');

... 중략..

 

음 끝으로 태요의 사이트에서 나온 예제를 좀 변경한 것을로 올려본다.

예나 지금이나 태요은 설명을 참 잘하셔.. ㅎㅎ

혹시 JQuery를 써보실려면 태요 사이트 가셔서 JQuery강좌 한번 보고 하는게 좋겠다

JQuery 재미있던데.. 요녀석 공부 좀 더해봐야겠다.

첨부한 예제 화면.

 

 

반응형

'jQuery' 카테고리의 다른 글

[jQuery] jQuery Checkbox 선택  (0) 2015.07.09
[jQuery] jQuery Checkbox 기능정리  (0) 2015.07.09
[jQuery] jQuery 시작하기 - Aptana 편집기  (0) 2015.07.09
[jQuery] jQuery 유용한 Tip  (0) 2015.07.09
[jQuery] jQuery 바로 사용해보자.  (0) 2015.07.09