入力テキストフィールドの変更をリッスンする最も推奨される方法の1つは、そのフィールドをキーアップイベントにバインドすることです。ほとんどの場合、それは正常に動作します。しかし、これは動作していない場合があります。たとえば、Firefoxでは、テキストがすでに選択されているときにコンテキストメニューを使用して削除するオプションがあります。そして、これはキーアップイベントを起こさない。私はこれを行うときにそのテキストフィールドのために解雇されたイベントは見つかりませんでした。 純粋なJavascriptまたはjQueryでこれにどのように反応することができますか?入力値の削除をリッスンします
3
A
答えて
8
oninput
イベントを参照してください。それについては、hereと書いてください。
oninput
は、切り取り、貼り付け、元に戻す、やり直し、消去、ドラッグアンドドロップやスペルの修正を含む、あらゆる形式のテキスト入力を実行します。これはInternet Explorer 8以降ではサポートされていないHTML 5イベントです(ただし最新のIE 9プレビューにあります)。ただし、Internet ExplorerはすべてのDOMオブジェクト(onpropertychange
)の独自イベントをサポートしています。これは、入力要素の値が変化するたびに発生します。私はあなたがしたので、あなたがjquery —でタグ付けしたい気付かなかった
、それは私がoninput
イベントクロスブラウザを実装するためのプラグインを書いたことを、おそらく言及する価値があります。あなたはhereを見つけることができます。
0
focus
イベントに値を格納し、blur
イベントの値を再確認することをお勧めします。キーイベントを聞くと、通常は冗長なプロセスが多く発生します。ほとんどの場合、ユーザーはフィールド値の入力(または削除)が完了したときにのみ、フィールド値でインターラストされます。
一部のブラウザでは、フォーカス/ブラーの委任が問題になることがありますが、これはクロスブラウザで動作します。最も簡単な方法は、ぼかし/フォーカスリスナーを要素に直接適用することです。
例外はautosuggest/completeなどの実装であり、キー入力をデバウンスして、ユーザーが数百ミリ秒間アイドル状態になったときにのみ起動するようにすることもできます。
関連する問題
- 1. Jqueryクローンを入力してクローンの値を削除します
- 2. .text()はすべての入力値を削除します
- 3. Swagger Editor値の入力フィールドを削除
- 4. 入力タイプ「番号」はテキストフィールドの値を削除します
- 5. jQuery UI Masked Picker:キーボードキーボードの入力値を削除します
- 6. 入力ボックスを削除します
- 7. AngularJS:ng-disabledは入力値を削除しますか?
- 8. クリックしたIDを入力値から削除する
- 9. Angular2 - 表示テキストボックスに入力した値のテキストを削除/キャンセルし、テキストの削除/キャンセルをクリックして入力フィールドをクリアします。
- 10. テキスト入力要素の入力IDを動的に削除します
- 11. "入力タイプ=ファイル"の値を削除する方法
- 12. Jquery値のある入力を削除する
- 13. Materializecss入力のスタイルを削除する
- 14. Mongoへの入力を削除する
- 15. Materializeのデフォルトの入力スタイリングを削除します
- 16. 入力を削除すると不正な値になる
- 17. 入力値からコンマを削除する
- 18. 入力から特定のテキストを削除しますか?
- 19. 配列から最低の入力を削除しますか?
- 20. Chromeオートコンプリート用の入力カーソルカラーを削除しますか?
- 21. RDDの重複フィールドを入力データから削除します
- 22. 入力ストリームの最後からNバイトを削除します
- 23. クロムの入力タイプチェックボックスから影を削除しますか?
- 24. アンダーラインボーダーマテリアライズ入力テキストを削除する
- 25. 入力データを削除する
- 26. kivyテキスト入力ボーダーを削除する
- 27. 入力に入力されたシンボルを削除する
- 28. 入れ子のフォーム要素は削除しますが、入力要素は削除しない正規表現
- 29. DataGrid PreviewTextInputイベントコントロール文字を入力から削除します。
- 30. EditTextは入力中に黒い下線を削除します
あなたはこの問題を縫い上げていると思います。 –
@Tim:ハハ、私は確かにしようとしています:-) –
@Tim:彼は彼のブログ記事で言及しているバグ以外、ええ。 –