sample: save the table state with localStorage
HTML
<input type="button" id="btn" value="hoge">
<input type="date" id="date">
<input type="button" value="データ消去" id="syoukyo">
<table id="table"></table>
JavaScript
/*
データの形式
var data = {
"番号(挿入時のiの値)": "日付",
"番号(挿入時のiの値)": "日付",
"番号(挿入時のiの値)": "日付"
};
とする(JSON)
理由
・復元する際、繰り返し処理にかけるため、すべてのデータは1つのオブジェクトにまとまっていてほしい
・オブジェクトを文字列に変換(JSON.stringify)、またはその逆(JSON.parse)が容易
*/
//データ読み込み(無い場合は空のオブジェクト)
var data = JSON.parse(localStorage.getItem("data")) || {};
var i = 0;
//読み込んだデータを元にtableを復元
for(var key in data) {
i = key; //iは最終的に、過去の連番の最大値になる
var tr = $('<tr></tr>');
tr.append('<td>' + data[key] + '</td>');
tr.append('<td><input type="button" id="ex' + i + '" value="削除"></td>');
tr.append('<td><input type="button" id="kakunin' + i + '" value="確認"></td>');
tr.appendTo('#table');
}
$("#btn").on("click", function() {
i++;
var tr = $('<tr></tr>');
tr.append('<td>' + $("#date").val() + '</td>');
tr.append('<td><input type="button" id="ex' + i + '" value="削除"></td>');
tr.append('<td><input type="button" id="kakunin' + i + '" value="確認"></td>');
tr.appendTo('#table');
//日付と連番をdataオブジェクトに入れ、
data[i] = $("#date").val();
//それをlocalStorageに書き込む
localStorage.setItem("data", JSON.stringify(data));
});
$("#syoukyo").on("click",function(){
if(confirm("ローカルストレージのデータを消去しますか?"))
{localStorage.clear();}
})