1

jQueryで作業している間、私はいつもこの問題に遭遇しているようです。2 つのフォーム フィールド A と B に、もう一方を変更する変更イベント ハンドラー (A が B を変更し、B が A を変更する) がある場合、それらが循環ループを作成しないようにするために受け入れられている設計パターンは何ですか?

4

1 に答える 1

2

各ハンドラーからパートナー要素の「変更」ハンドラーを明示的にトリガーする場合は、ソース要素にフラグを設定し、そのフラグが表示されたらハンドラーを中止します。

function handler(ev) {
  if ($(this).data("handling-now")) return;

  $(this).data("handling-now", true);

  // do stuff

  $(this).data("handling-now", null);
}
于 2012-12-14T23:08:47.790 に答える