テキストボックスの値が変わるたびに関数を実行します。これは通常、次のように行われます。HTMLテキストボックスの値がdocument.getElementById( "textfield")のために変更された場合、Javascript関数を実行するにはどうすればよいですか?
onchange="myfunction()"
上記の私はいくつかの追加のrequirmentsを持っているので、私のために動作しません。
- ユーザーが「Tab」を押すか他の要素を選択するのを待つのではなく、任意のテキストが入力されるとすぐに実行する関数が必要です。
JavaScriptがフィールドを自動的に更新するために使用されるときは、関数を実行します(下記のステートメントを参照)。
document.getElementById("textfield").value = "";
だけの要素を変更するコードから 'MyFunctionを()'を呼び出します。私が知る限り自動的にそれを行うことは何もありません。イベントは通常、外部からトリガーされたアクションのみであり、スクリプト自体によるアクションではありません。 – Barmar
#1の場合、[* input * event](https://developer.mozilla.org/en-US/docs/Web/Events/input)ですが、古いブラウザのサポートが不足している可能性があります。 2つめは、[*突然変異イベント*](https://developer.mozilla.org/en-US/Add-ons/Overlay_Extensions/XUL_School/Appendix_F:_Monitoring_DOM_changes)で様々な試みが行われていますが、どれも成功していないか、採用された。ポーリングはオプションですが、一般的には悪い考えです。要素に値を変更するコードがあるかどうかを確認してください([* changeatch * change event *](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/dispatchEvent))。 – RobG