div data 하나 질문드립니다. 채택완료

9년 전 조회 2,522

<div data='1,2'>메인

<div data='1'>1</div> 

<div data='1'>2</div>

<div data='1'>3</div>

<div data='2'>4</div>

<div data='2'>5</div>

<div data='2'>6</div>

</div>

 

data값이 하나가 아닌 위의 메인처럼 2개로 잡고 스크립트를 이용하여 하위 에들이 전부 

나오는 방법이 있나요?? data값에 하나를 넣어서 해당 값과 같은 것은 출력이 되는데

저렇게 복수방법으로 하는건 안되네여 ㅜ

답변 1개

채택된 답변
+20 포인트

<button id="btn">click</button>

<div id="mydiv" data-no='1,2,3,4,5,6'>메인

<div data-no='1'>1</div> 

<div data-no='2'>2</div>

<div data-no='3'>3</div>

<div data-no='4'>4</div>

<div data-no='5'>5</div>

<div data-no='6'>6</div>

</div>

 

<style>

#mydiv div { display:none}

</style>

 

<script>

var arr = $("#mydiv" ).data('no').split(','); 

$('#btn').on('click', function() {

$('#mydiv div').each( function() {

if (jQuery.inArray($(this).data('no').toString(), arr) > -1) 

$(this).show();

});

})


로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

감사합니다^_^
아 그런데 꼭 1,2,3 처럼 순차적으로 되어야 적용이 되는건가요?? 막 223, 243, 623 이렇게는 작동이 안되나요 ??
var arr = $("#mydiv" ).data('no').split(/[^\d]+/);

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고