2012-01-18 4 views
0

SELECTの値が変更されたときにDIVをAJAXで更新するSELECTボックスがあります。HTML SELECT - 遅れたオンチェンジは可能ですか?

このAJAXルーチンは非常に遅いので、絶対に必要なときにのみ呼び出すことができます。

私はこれにonchangeイベントを使用します。

FirefoxとChromeでは、さまざまなオプションをスクロールするためにキーを使用するとうまくいきます。 onchangeイベントは、SELECTから出るときにのみ起動されます。

しかし、Internet Explorerでは、矢印キーが押されるたびにonchange-eventが発生します。ほとんどの人がこれを好むことは分かっていますが、遅いAJAX呼び出しのためにSELECTが遅くなります。

私が必要とするのは、何らかの遅れた更新です...ユーザーが矢印キーを使用してオプションを選択しているときに更新を煩わせることなく、onchangeを数秒後に起動する必要があります。

これを達成する方法はありますか?

答えて

1

setTimeoutを使用してタイムアウトを設定し、タイムアウトが経過する前にユーザーが変更された場合はclearTimeoutを使用してキャンセルできます。

jqueryを使用している場合は、キューの機能、特に遅延機能を調べてみてください。私は、キューのは、それがより簡潔が、今それをテストすることはできません作ることができると思う - 私が提案したものにjQueryとは異なるアプローチを使用してDelay ajax request by x seconds and update only the last clicked request

は、ここに完全な例を参照してください。

関連する問題