2012-05-03 11 views
0
私はこれでクッキーのチェックボックスの状態を保存したい

で複数のチェックボックスの状態:ストアjquery.cookie.js

<script type="text/javascript"> 
$(document).ready(function(){ 
var checkbox = $('#boxlawreg :checkbox'), 
    checkboxCookieName = 'checkbox-state'; 

checkbox.prop('checked', +$.cookie(checkboxCookieName)); 

checkbox.click(function() { 
    $.cookie(checkboxCookieName, +this.checked); 
}); 
}); 
</script> 

それは素晴らしい仕事だが、私は7チェックボックスを持っていると私は1つをチェックすると、私のウェブサイトをリロードし、すべてのチェックボックスがチェックされます。

それは次のようになります:

<input type="checkbox" name="option1" value="1"> 
<input type="checkbox" name="option2" value="2"> 
<input type="checkbox" name="option3" value="3"> 
<input type="checkbox" name="option4" value="4"> 

任意のアイデア?

(詩:英語のため申し訳ありませんが、私はフランス人だ)

答えて

3
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
    <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> 
    <script src="https://github.com/carhartl/jquery-cookie/blob/master/jquery.cookie.js" 
     type="text/javascript"></script> 
    <script type="text/javascript"> 
     $(document).ready(function() { 
      var checkbox = $('#boxlawreg').find(':checkbox'), checkboxCookieName = 'checkbox-state'; 

      checkbox.each(function() { 
       $(this).attr('checked', $.cookie(checkboxCookieName + '|' + $(this).attr('name'))); 
      }); 

      checkbox.click(function() { 
       $.cookie(checkboxCookieName + '|' + $(this).attr('name'), $(this).prop('checked')); 
      }); 
     }); 
    </script> 
</head> 
<body> 
    <div id="boxlawreg"> 
     <input type="checkbox" name="option1" value="1" />1<br /> 
     <input type="checkbox" name="option2" value="2" />2<br /> 
     <input type="checkbox" name="option3" value="3" />3<br /> 
     <input type="checkbox" name="option4" value="4" />4<br /> 
    </div> 
</body> 
</html> 
+0

はい、それは完璧に動作しています! ありがとう! – Cat

+0

k .. you r welcome .. – Thulasiram