#4 HTMLフォームで戻る動作の時にフォームの値を復元する(sisyphus.js)

icon incmplt が 2018/04/20 11:54 に投稿 ( icon incmplt が 2018/04/20 15:13 に編集 <更新履歴> )
  投稿を編集(サインイン)
  ストック
  アンケート回答

  目次

フォームへの確認画面などで「戻るボタン」を押して画面遷移した場合や「リロード」ボタンを押した時に自動的に値を再構築したい場合、非常に面倒な手間が必要だった。

この面倒な処理をなくし、HTML5のローカルストレージ機能を使用してフォームの値を再構築するJQueryプラグインが「sisyphus.js」である。

HTML5のローカルストレージ(ローカルDB)を使用するので、IEの古いバージョンでは動作しない。
Chrome,Firefoxなどでは問題なく利用することができる。

sisyphus.js 本家サイト http://sisyphus-js.herokuapp.com/

使用方法

HTMLフォーム(例

<form id="dataform">
....
</form>

JavaScript で以下のように記述(以下の例ではhidden以外を再構築するように指定)

$(function(){
    $( "#dataform" ).sisyphus( {
        locationBased: false,
        excludeFields: $('input[type="hidden"]'),
        autoRelease: false
    } );
});

この例では autoRelease を無効にしているので、ローカルストレージのデータを手動で削除する必要がある。

最終的なsubmit処理の時に、以下のような onclick動作を追加して、ローカルストレージを削除する。

onclick="localStorage.clear();return true;"

その他パラメータなどは、プラグイン付属のドキュメントもしくは公式サイトを参照。

 添付ファイル     - [0]


 コメント追加