電子メールをすぐに検証できるように、電子メール検証用にコントローラーにリモート検証を設定しました。これをもう少し進めて、ユーザーがまだ入力しているときにメールを検証したいと思っています。現在、ユーザーが初めてテキストボックスからフォーカスを外したときに検証されますが、テキストボックスに戻ると、キーアップ時に検証されます。別のトリガーでリモート検証を設定する方法はありますか?たぶんキーアップですが、一定の時間が経過した後ですか?
1 に答える
1
setTimeout
検証コードを実行する前に、JavaScriptの基本でこれを行うことができます。
jQueryを使用した簡単な例:
$('#myElement').keyup(function(){
setTimeout(ValidationFunction,1000);
});
キーが押されたときにタイムアウトをクリアする必要がある場合は、次のことができます。
var myTimeoutFunction;
$('#myElement').keyup(function(){
myTimeoutFunction = setTimeout(ValidationFunction,1000);
});
$('#myElement').keydown(function(){
window.clearTimeout(myTimeoutFunction);
});
于 2012-05-10T14:13:33.097 に答える