테스트 사이트 - 개발 중인 베타 버전입니다

javascript div 보이기 숨기기 질문입니다. 채택완료

Chriskim0907 5년 전 조회 5,135

toggle 속성을 게시판 검색버튼과 연동해서 검색버튼을 클릭했을경우만 게시판리스트가 나오도록하고싶은데.    검색버튼을 누르니 페이지가 새로고침되면서 리스트가 잠깐보였다 다시 block 상태로 되네요.

유지방법없을까요?

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

답변 4개

채택된 답변
+20 포인트

</strong></p>

<p>    <button id="toggle">toggle</button>

    <div id="bo_list" style="display:block">bo_list</div></p>

<p>    <script type="text/javascript">

        $(document).ready(function() {

            $('#toggle').click(function() {

                

                if ($("#bo_list").css("display") == "none") {

                    $('#bo_list').css("display", "block");

                    localStorage.setItem("bo_list", "block");

                }

                else{

                    $('#bo_list').css("display", "none");

                    localStorage.setItem("bo_list", "none");

                }                

                console.log("set: " + $('#bo_list').css("display"));

                </p>

<p>            });

            var display = localStorage.getItem('bo_list');

            ($("#bo_list").css("display", display));

             console.log("get: " + display);

        });

    </script></p>

<p><strong>

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

답변에 대한 댓글 3개

C
Chriskim0907
5년 전
감사합니다 한번에 해결됬습니다 ^^
C
Chriskim0907
5년 전
혹시 여기에 페이지가 빠져나가면 초기화 어떻게하나요? 다른메뉴갔다와도 열린상태가 유지되네요 ;; ㅎㅎ;;
C
Chriskim0907
5년 전
요렇게 수정해서 해결했습니다 ^^ 너무너무 감사합니다.

<script type="text/javascript">
$(document).ready(function() {
$('#toggle').click(function() {
if ($("#bo_list").css("display") == "block") {
$('#bo_list').css("display", "block");
localStorage.setItem("bo_list", "block");
}
else{
$('#bo_list').css("display", "block");
localStorage.setItem("bo_list", "block");

}


});
var display = localStorage.getItem('bo_list');
($("#bo_list").css("display", display));
console.log("get: " + display);
localStorage.clear('bo_list');

});


</script>

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

5년 전

아마 검색 버튼을 누르면 폼을 전송해서 검색을해서 다시 보여주는 것 같은데 그래서 새로 고침한 것 처럼 보이는 거 같네요. 

검색 폼에 hidden 하나 추가하시고 검색 폼을 submit 하기 전에 채워서 같이 보내시고 화면 로딩시 그 변수를 확인해서 보이게 하시면 될 것 같네요

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

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

1. cookie 사용

2. url에 get으로 넘김

3. localStorage 사용

 

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

답변에 대한 댓글 1개

C
Chriskim0907
5년 전
cookie 를 시도해봤는데 사용법을 잘모르겠습니다 ;; ㄷㄷ get은 검색 샷버튼 연동되는부분이라 찾기가 쉽지않네요. 3번은 잘모르겠습니다 ㄷㄷㄷ

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

dragon
5년 전

이렇게 한번 해보세요..

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

답변에 대한 댓글 1개

C
Chriskim0907
5년 전
안되네요 ^^;;

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

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

로그인