貼り付けイベントをキャッチしています$('selector').on('input', function(event) { ... });
次に、貼り付けられたものをテストしようとしています。検証に合格しない場合は、貼り付けをキャンセルしevent.preventDefault()
ます。残念ながら、リスナー関数が実行されるまでに、テキストは既に貼り付けられており、event.preventDefault()
何もしません。
では、貼り付けイベントをキャッチする良い方法は何ですか?貼り付けられたものが検証されない場合は、貼り付けを元に戻す/防止しますか?
を使用できることはわかっ.on('paste', function(event) { ... })
ていますが、貼り付けられたテキストや貼り付け後の入力要素の内容は、setTimeout()
数分待機して使用しない限り、表示されず、使用を避けたいと思いsetTimeout()
ます。