2016-07-26 13 views
2

私のページにはチェックボックスがあり、デフォルトでチェックされています。私は、LocalStorageを使用して、ユーザーがそれを変更した場合に値をそこに保存しようとします。Jquery prop onチェックボックスがページロードで機能しない

<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

'$( '#1 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

関連する問題