使い方としては、以下のように引数でクラスを指定して実行する。持つチェックボックスを全部探して、それぞれのチェックボックスにイベントハンドラを割り当てている。そのハンドラ内では、チェック状態が変化する度に、LocalStorageを読み書きしている。言う属性で与える事にしている。無くて、任意の文字列を利用できる。値をキーに用いても良いだろう。実は当初はそのようにしていたのだが、何らかの理由でvalueの値を変更した場合には、LocalStorageのキーが変わってしまうのでデータが読み出せなくなる。LocalStorageへのデータ保管用に独自の属性data-savekeyを定義したのだ。LocalStorageの中身を確認するこのようにして作成したHTMLをブラウザーで表示する。表示されたチェックボックスのチェック状態を変化させてみる。ブラウザーのF12で開発者モードに入ると下図のようにLocalStorageの中身を確認する事が出来る。ブラウザーで表示されているチェックボックスのチェック状態を変化させれば、LocalStorageのデータが動的に変化する様子を確認出来るのでデバッグ時には役立つ。用いているが、先ほども説明したようにこのキーは、他のキーと重複しなければどんな文字列でも良い。textで作成した文字列入力欄に対しても、類似の関数を作成してLocalStorageに状態やデータを記憶し、復元するようにした。それらの全ソースコードを紹介しよう。全HTMLコードjQueryを使わずにJavaScriptのみで記述してみた。objectのキーが来るのだ。</body></html>まあこのHTMLソースをファイルに保管してブラウザーで表示すれば上手く動くと思う。変数名がヘンテコなので分かり辛いかもしれない。CheckboxはCBと略している。Select/Optionで作成するドロップダウンリストはDDと略している。textはTextBoxの頭文字でTBと略している。JavaScriptなどのウェブプログラミングの世界の用語と、C#プログラミングの両方の用語が混じってしまったのだ。上のHTMLコードには制限事項が幾つかある。11では動かなかったクライアントサイドでやっているのでページが表示されて最後に状態を復元するので、もたもたした感じがする(その点、サーバーサイドなら表示する時点で状態が復元されているので素早い)などかな。複数のチェックボックスグループが有る場合には、それら全てのチェックボックスに同じクラス名を与えても良い。save_restore1_checkbox('save-state1');各チェックボックスに与えるdata-savekeyは重複しない文字列を与えれば良い。チェックボックスグループごとにクラス名を変えても良い。save_restore1_checkbox('save-state10');save_restore1_checkbox('save-state20');この場合には、同一クラスに属するチェックボックス間で、data-savekeyが重複せずに一意で有れば良いように作りたかったのだが、未完成だ。現状では、どのクラスに属するチェックボックスであっても、data-savekeyは他のチェックボックスと同じ値を指定してはいけない。textの場合も同様である。まとめ自称、PHPの初心者でありJavaScriptの達人(嘘)のワテが、ブラウザーで表示したチェックボックスやドロップダウンメニューの選択状態を復元する手法を紹介した。ここで紹介したコードは、ネット検索していろんなサイトにある手法を比較して、幾つかの良さそうなコードをミックスして自分なりにカスタマイズしたやつだと思う。一応問題なく動いているのでワテは良く使っているのだが、バグがあるかも知れないのでご注意下さい。ウェブプログラミングのスクールに通うプログラミングを学びたい人にお勧めのプログラミングスクールはこれだ。WEBCAMPの特徴としては、未経験や初心者の方でも3ヶ月という短期間で、高いエンジニアスキルを身に付けることができる転職・就職保証型プログラミングスクールだ。受講完了後、3ヶ月以内に転職・就職できない場合は全額返金しています!とのキャッチフレーズなのだ。ほんまかいな!?この三社のどれが良いかは、コース内容や受講料などで比較検討して頂きたい。ワレコのサイトで見たと言っても割引などは無い事は言うまでも無いが、試しに言ってみて、どんな反応があったのか教えて頂けると嬉しい。(「いちばんやさしい教本」)インプレスAmazonの商品レビュー・口コミを見るAmazon楽天Yahoo!ショッピングスポンサーリンクワテ推薦のプログラミングスクールで学ぶコメント募集この記事に関して何か質問とか補足など有りましたら、このページ下部にあるコメント欄からお知らせ下さい。違いワテの場合、HTML関連の記述方法を良く忘れるので自分用の備忘録。リンクやボタンをクリックすると通常は同じウインドウが上書きされる。この勉強を始める前は、WEBプログラミングはHTMLをちょこっと手書きで作成した事が有る程度だった。n回繰り返した文字列を作成したい場合が時々ある。C#の場合ならこんな感じか。いう記事を書いたのだが、その時には単にインストールしただけであった。当記事では、そのNode.jsと言うのを使ってみた。それ以前にN...HTML【ワテのjQuery講座】テーブルをプログラムで動的に作成する方法【これだ!!】WEBプログラミングをやっていると、JavaScriptやjQueryを使って動的にDOM要素を生成したい場合が良くある。table(テーブル)を作ってみたい。JavaScriptを使う方式とjQueryを使う方式の二種類を...ASP.NET【ワレコ備忘録】ASP.NETでエラー発生時のチェック項目など【プログラミングメモ】このところ、猛烈にASP.NETを勉強しているのだが、些細な事で良くつまづく。コメントをキャンセルメールアドレスが公開されることはありません。Expressサイト作成2020.01.302020.02.04.2020.02.23>>あかん、エラーしよった。役に立たない記事です。この度は小生のサイトにコメントありがとうございます。構造用合板の切断面のバリや表面のささくれの処理ですが、私の場合には何もしていません。私の近所のホームセンターで売っている構造用合板は表面にささくれが多くて、1日かけてやすりがけしないととても使えません。この度は詳しい解説ありがとうございました。「更新版をインストールした場合には自動で引き継がれる。新規購入製品をインス...【ワテ大発見】ノートンは自動延長するよりも新規に3年版を買うほうが安いひげ2020.01.05パッケージ版を購入した場合も追加されません。ノートン製品に表示された有効期間の期限切れの通知から延長またはアップグレードした場合、以前残っていた有効期間が自動的に新しい有効期間に追加されます。(4)[ワテ解説]ブログ始めるぞ![ワテ自作]お買い物支援サイトなるべく安く買う!↑初回起動時のみ10秒くらい掛かります。Expressサイト作成2020.01.302020.02.04.2020.02.23>>あかん、エラーしよった。役に立たない記事です。この度は小生のサイトにコメントありがとうございます。構造用合板の切断面のバリや表面のささくれの処理ですが、私の場合には何もしていません。私の近所のホームセンターで売っている構造用合板は表面にささくれが多くて、1日かけてやすりがけしないととても使えません。この度は詳しい解説ありがとうございました。「更新版をインストールした場合には自動で引き継がれる。新規購入製品をインス...【ワテ大発見】ノートンは自動延長するよりも新規に3年版を買うほうが安いひげ2020.01.05パッケージ版を購入した場合も追加されません。ノートン製品に表示された有効期間の期限切れの通知から延長またはアップグレードした場合、以前残っていた有効期間が自動的に新しい有効期間に追加されます。(4)[ワテ解説]ブログ始めるぞ![ワテ自作]お買い物支援サイトなるべく安く買う!↑初回起動時のみ10秒くらい掛かります。Framework散策バイク旅行・ドライブWEB。