Мне нужна помощь с функцией JavaScript, которую я вызываю onKeyUp, это функция Ajax, но каждый раз, когда я пишу любой символ, он вызывает функцию, и это замедляет производительность страницы, и она проверяет каждый раз, это пользователь проверяет базу данных.JavaScript onKeyUp временная задержка
Я попытался это:
var timer;
function chk_me(){
clearTimeout(timer);
timer=setTimeout(function validate(){...},1000);
}
Но моя функция Validate есть параметр, так что я не в состоянии передать его, я вызываю функцию так:
<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);
}
}
Итак, я принимаю var таким образом, чтобы любые предложения, чтобы сделать его лучше?
Благодаря
Можете ли вы подробнее остановиться на в чем именно проблема?: Ввод выполняется медленно, взаимодействие со страницей происходит медленно? – mrtsherman
Ну, это не замедляет производительность, которую я пропускаю, аакс медленнее, чем Javascript, поэтому я показываю каждую клавишу нажатой, если она доступна или нет, и когда вы, хотя она доступна, может показать вам, что она недоступна @mrtsherman спасибо – apz2000
Возможный дубликат [jQuery .keyup() delay] (http://stackoverflow.com/questions/1909441/jquery-keyup-delay) –