Мне нужна помощь с JavaScript-функцией, которую я вызываю onKeyUp, это Ajax-функция, но каждый раз, когда я пишу какой-либо символ, она вызывает функцию, и она замедляет работу страницы и каждый раз проверяет, что пользователь проверяет база данных.
Я пробовал это:
var timer;
function chk_me(){
clearTimeout(timer);
timer=setTimeout(function validate(){...},1000);
}
Но у моей функции проверки есть параметр, поэтому я не могу передать его, я вызываю функцию следующим образом:
<input type="text" name="usuario" id="usuario" class="required" onKeyUp="chk_me();" minlegth="4" value=/>
Это правильно? Что мне делать?
Это мой первый вопрос, и я надеюсь, что вы все это понимаете
Спасибо,
Alberto
Спасибо всем, так как я новичок, я не могу сделать это в другом ответе, поэтому я отредактировал свой вопрос с помощью решения.
Я нахожу это: http://bytes.com/topic/javascript/answers/451142-need-advice-acting-only-last-onkeyup-event-series и использую метод последнего ответа и добавляю в него некоторый код, я оставляю вам код, как будто он говорит, что это не лучший способ, но работает, так что если у вас есть какой-то другой способ, я буду признателен и используйте это здесь:
var keyCount = 0;
var timeoutCount = 0;
function handleKeyUp() // keyup handler
{
keyCount++;
setTimeout("compareCounts()", 500);
}
function compareCounts()
{
var usuario = document.profileForm.usuario.value;
timeoutCount++;
if (keyCount == timeoutCount)
{
xajax_checaUsuario(usuario);
}
}
Итак, я принимаю вар таким образом любые предложения, чтобы сделать его лучше?
Спасибо