回答編集履歴

2

sample

2018/03/27 12:46

投稿

yambejp
yambejp

スコア114876

test CHANGED
@@ -27,3 +27,73 @@
27
27
  console.log(document.cookie);
28
28
 
29
29
  ```
30
+
31
+
32
+
33
+ # sample
34
+
35
+ 一応提示されているソースに準じて処理してみました
36
+
37
+ ```javascript
38
+
39
+ $(function(){
40
+
41
+ if($.cookie("chk_sample_selected_value")){
42
+
43
+ $.cookie("chk_sample_selected_value").split(",").forEach(function(v){
44
+
45
+ $('input[name=chk_sample][value='+v+']').prop('checked',true);
46
+
47
+ });
48
+
49
+ }
50
+
51
+ $('.save').on("click",function(){
52
+
53
+ var v=$('input[name=chk_sample]:checked').map(function(){return $(this).val()}).get().join(",");
54
+
55
+ if(v===""){
56
+
57
+ $.removeCookie("chk_sample_selected_value");
58
+
59
+ }else{
60
+
61
+ $.cookie("chk_sample_selected_value",v);
62
+
63
+ }
64
+
65
+ });
66
+
67
+ $('.reload').on("click",function(){
68
+
69
+ location.href=location.href;
70
+
71
+ });
72
+
73
+ });
74
+
75
+ ```
76
+
77
+ ```HTML
78
+
79
+ <div>
80
+
81
+ <label><input type="checkbox" name="chk_sample" value="apple">りんご</label>
82
+
83
+ <label><input type="checkbox" name="chk_sample" value="orange">みかん</label>
84
+
85
+ </div>
86
+
87
+ <div class="save">保存</div>
88
+
89
+ <div class="reload">リロード</div>
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+ ```

1

追記

2018/03/27 12:46

投稿

yambejp
yambejp

スコア114876

test CHANGED
@@ -7,3 +7,23 @@
7
7
  かりに設定されていない場合のelseがないので、設定されてなければ
8
8
 
9
9
  一生設定されないままなにも変化はないのでは?
10
+
11
+
12
+
13
+ それと無いとは思いますが、クッキーはセットしたけど空な場合は参照してもfalse扱いになります
14
+
15
+
16
+
17
+ ```javascript
18
+
19
+ $.cookie("a","1");
20
+
21
+ if($.cookie("a")) console.log("hoge");
22
+
23
+ $.cookie("b","");
24
+
25
+ if($.cookie("b")) console.log("fuga");
26
+
27
+ console.log(document.cookie);
28
+
29
+ ```