div id값으로 안 보이게 하는 방법 질문요 채택완료
이렇게 소스가 되어 있습니다. 기본으로 다 안 보이고
보기 이런식으로 클릭할때만 그 숫자의 레이어만 보이게 할려고 하는데요
function select(aa) { document.getElementById('city'+aa).style.display = '';
}
근데 문제는 이렇게 하면 보기 또 눌러 버리면 0,1 레이어가 다 보이게 됩니다. 0을 클릭하면 다른건 안 보이고 0만 보여야 하고, 1을 누르면 0은 안 보이고 1만 보여야 합니다.
어떻게 해야 할까요?
물론 1을 누루면 0,2를 none 으로 하는 스크립트를 넣으면 되긴 하는데 문제는 저 값들이 고정된게 아니라서 어떤곳은 1~9까지 있을수 있고, 어떤곳은 1~3 이럴수도 있어서
뭐 길게 설명했지만 핵심은 스크립트 처리를 할때 id 값으로 포괄적으로 실행시키는 방법이있나요?
예를 들어 city 으로 시작하는 id값을 모두 한번에 실행시킬수 있는
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
5년 전
</p>
<p><script>
$(function() {
$(".city").on("click", function() {
$("#city" + $(this).data("no")).toggle();
});
});
</script></p>
<p><div id="city0" style="display: none;">0</div>
<div id="city1" style="display: none;">1</div>
<div id="city2" style="display: none;">2</div>
<a href="#" class="city" data-no="0">보기</a>
<a href="#" class="city" data-no="1">보기</a>
<a href="#" class="city" data-no="2">보기</a></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 7개
�
5년 전
�
5년 전
[code]
$(".city").on("click", function() {
$("div[id^='city']").hide();
$("#city" + $(this).data("no")).toggle();
});
[/code]
$(".city").on("click", function() {
$("div[id^='city']").hide();
$("#city" + $(this).data("no")).toggle();
});
[/code]
�
5년 전
감사합니다. 됩니다. ^^
근데 링크를 <a href="#" 이런식으로 하다보니 클릭할때마다 화면이 위로 올라가 버리는데 화면 이동없이 a 링크도 되나요?
근데 링크를 <a href="#" 이런식으로 하다보니 클릭할때마다 화면이 위로 올라가 버리는데 화면 이동없이 a 링크도 되나요?
�
5년 전
[code]
$(".city").on("click", function(e) {
e.preventDefault();
$("div[id^='city']").hide();
$("#city" + $(this).data("no")).toggle();
});
[/code]
$(".city").on("click", function(e) {
e.preventDefault();
$("div[id^='city']").hide();
$("#city" + $(this).data("no")).toggle();
});
[/code]
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인전체 질문 목록
채택
채택
채택
채택
채택
채택
채택
답변대기
채택
답변대기
답변대기
채택
채택
답변대기
채택
채택
안 사라집니다. 0보기 누르면 city0만 보이고 나머지는 안 보여야 하는데 그대로 보입니다.