jQuery Stateフォームまたは単純なフォームコントロール

良い時間%ユーザー名%!



フォームの状態を監視するための興味深いプラグインを公開します。

「フォームの状態」とは何ですか? これは、初期化時にフォームに設定された値のキャストです。 プラグインには余分なものはなく、「好みとand食」はありません。それが開発されたもの、つまりフォームの値の変更を制御するものだけです。 これは何のためですか? たとえば、データに加えられた変更をログに記録するなど、あらゆる種類の状況があります。 ページを離れるイベントを制御しようとすることができます、突然、ユーザーが何かを入力しましたが、保存するのを忘れましたか?



誰も気にしないでjsfiddleいじることができます。



プラグイン自体は非常にシンプルです。 初期化:

$(document).ready(function() { $('form').state_form(); });
      
      





または詳細オプション:

 $(document).ready(function() { $('form').state_form({ //name input in form inputName: 'changed_state', //is default //add input with changes in form insertInForm: 1, //is defaul //function before form submit //call if form has changes ifChanged: function() { //is default return true; }, //field for excluded exclude: ['field1', 'field2'] }); });
      
      







状態の変更を確認します。

 $('form').state_form('is_changed');
      
      





変更されたフィールドを取得:

 $('form').state_form('get_changes');
      
      







ハンドラーはフォーム送信イベントで停止します。ハンドラーはすべての変更を収集し、jsonでそれらをエンコードし、フォームにフィールドを作成して結果の文字列を挿入し、変更をサーバーに送信します。 この機能は無効にできます。



UPD:プラグインを0.0.3に更新し、状態履歴を操作するためのメソッドを追加しました。 RubaXaにあなたの提案と批判に感謝します!



ソースコードgithub.com/Slavenin/state_form

コメントや提案をお待ちしております!

ご清聴ありがとうございました!



All Articles