2016-07-26 1 views
2

페이지에 기본적으로 선택되어있는 체크 박스가 있습니다. LocalStorage를 사용하여 사용자가 변경하면 값을 저장하려고합니다.페이지로드시 Jquery 소품의 확인란이 작동하지 않습니다.

<script language="javascript" type="text/javascript"> 
     jQuery(document).ready(function ($) { 

      $('#togglelist').prop('checked', localStorage.ListCheckbox); 

      $("#togglelist").change(function() { 
       localStorage.ListCheckbox = $('#togglelist').prop('checked'); 
      }); 

    </script> 

나는 개발자에 볼 수있는 체크 박스를 클릭하면서 변화하는 값을 콘솔 :

이 내가 한 일이다. 또한 체크하지 않은 채로두면 (false) 다음 페이지로드시 로컬 저장소의 값은 false이지만 확인란은 계속 선택됩니다.

편집 : JQM이 없으므로 checkboxradio('refresh')을 사용할 수 없습니다.

+0

'$ ('#의 togglelist'). 소품과 localStorage의 값의 형태로 localStorage 항상 데이터를 저장 ('checked', localStorage.ListCheckbox === 'true'); ' – Rayon

+0

Omg. 이거 야. 답변으로 추가 할 수 있습니까? – Tasos

+1

'비어 있지 않은'문자열은 항상 진실이고'localStorage'는 항상'string '형태로 데이터를 저장합니다. – Rayon

답변

4

non-empty로 문자열은 항상 truthy하고 string

테스트 string

$('#togglelist').prop('checked', localStorage.ListCheckbox==='true'); 
+1

9 분 안에 답을 수락합니다 (SE의 제한 때문에) – Tasos

관련 문제