キーを押さないとAJAXコールを起動するタイマーです。キーが押された場合、最後のタイマーを中止し、新しいタイマーを追加します。それは私がしたいことですが、成功しませんでした。ここに私のコードです:入力が終了するまでコールバックが実行されないようにします。
var t;
input.onkeyup = function(){
$('.confirmText').html('Checking...');
var timeStampObj = new Date()
var timeStamp = timeStampObj.getTime();
var oldTimeStamp = $(this).attr('timeStamp');//I store a timeStamp in the element
if(timeStamp < 500 + oldTimeStamp){
$(this).attr('timeStamp', timeStamp);
clearTimeout(t);
}
t = setTimeout(function(){
$.ajax({
url: 'serverScripts/settings/checkEmailAvailability.php',
data: 'email='+email,
success: function(text){
if(text == 'available'){
$('.confirmText').html('Available!');
}else{
$('.confirmText').html('Occupied!');
}
}
});
}, 500);//Half a second
$(this).attr('timeStamp', timeStamp);
}
[OK]マイナーミスマックメールが定義されていません – einstein
これは今解決されましたか? –