0

2 回トリガーされる onChange イベント ハンドラーがあります。1 回目はユーザーが行った変更の場合で、2 回目は元のユーザーの変更の結果としてプログラムによって行われた変更の場合です。前者の場合、イベントは 1 回だけトリガーする必要があります。ユーザーによる変更とスクリプトによる変更をどのように区別しますか?

4

2 に答える 2

0

このような問題をキャッチし、場合によっては回避するための 1 つの良い方法は、onchange ハンドラで古い値と現在の値を常にチェックすることです。

function onChange_handler(e){
  if(this.old_value==this.value){
        return; // no change detected - check why was it called twice.
  }
  this.old_value=this.value;
  // the real change handling code
}
于 2013-07-31T14:24:52.223 に答える