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
コメントや提案をお待ちしております!
ご清聴ありがとうございました!

Source: https://habr.com/ru/post/J207338/


All Articles