teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2017/01/19 12:56

投稿

manabufukai
manabufukai

スコア700

answer CHANGED
@@ -75,4 +75,8 @@
75
75
  (もしくはオブジェクト形式での保存のいずれかになります)
76
76
 
77
77
 
78
- あと細かいことですが、JavaとJavaScriptは別言語ですので混同しないようにしておきましょう。
78
+ あと細かいことですが、JavaとJavaScriptは別言語ですので混同しないようにしておきましょう。
79
+
80
+ ####追記
81
+ ![イメージ説明](a9ae5d3f7cca8d85b504b3a886c56560.jpeg)
82
+ こちらの環境ではすべて保存ができていますが…。(リアルタイムでstorageへ追加されているのが確認できない場合あり。注:保存はされている=リロードすると保存できているのが確認可)

1

追記と修正

2017/01/19 12:56

投稿

manabufukai
manabufukai

スコア700

answer CHANGED
@@ -1,9 +1,9 @@
1
- まず初めに、これはlocalStorageに保存ができていないのではなく
1
+ まず初めに、これはlocalStorageに保存ができないのではなく
2
2
  **クリックイベントが付与できていない**のが原因です。
3
3
 
4
4
  `#save(n)`に対するclickイベントがdocument.readyのタイミングで定義されていますが
5
5
  `#save(n)`はbuttonをクリックした際に追加される要素です。つまり、document.readyの段階では**ページ上に存在していない要素**です。
6
- そのため、例え`.on('click', fun)`で定義しようと、そのイベントは付与されません。
6
+ そのため、例え`.on('click', fun)`で定義しようと、そのイベントは付与されません。(alertが実行されないのはその為です)
7
7
  正しくは、`append()`したタイミングで`.on('click', fun)`を行う必要があります。
8
8
  ```JavaScript
9
9
  //Ex.
@@ -68,4 +68,11 @@
68
68
  また、`#delete`という要素が質問のコード内に存在していないため
69
69
  その要素へ設定したクリックイベントも割愛しています。
70
70
 
71
+ ---
72
+ > localStorageは文字列の保存ができないため
73
+
74
+ そんなことはありません。localStorageは文字列で保存されます。
75
+ (もしくはオブジェクト形式での保存のいずれかになります)
76
+
77
+
71
78
  あと細かいことですが、JavaとJavaScriptは別言語ですので混同しないようにしておきましょう。