Здравствуйте. Такая проблема, в скрипте обработчик нажатия клавиш. Обработчик посылает запрос в бд, существует ли строка в поле в таблице бд, и в зависимости от ответа окрашивает поле. Собственно проблема в том что когда вводишь строку, чтобы строка в итоге нашлась нужно дополнительно куда нибудь нажать, тогда предыдущий вариант отсылается серверу, и если набрать "никк" - то отсылается "ник". Не могу понять как с этим бороться - вот код:
<p>Name:</p><input type="text" name="nickname" onkeyup="checkUserName(getName());">
function checkUserName(user) {
	if (window.XMLHttpRequest)
	{
		xmlr=new XMLHttpRequest();
	}
	else
	{
		xmlr=new ActiveXObject("Microsoft.XMLHTTP");
	}
		xmlr.onreadystatechange=function()
	{
		if (xmlr.readyState==4 && xmlr.status==200)
		{
			
			
			dbUserName=xmlr.responseText;
		}
	}
	xmlr.open("GET","\\tools\\userslogin\\checkuser.php?user="+user,true);
	xmlr.send(); 
	if (dbUserName==1) {
		document.formReg.nickname.style.background = '#faa';
	}
	else {
		document.formReg.nickname.style.background = '#afa';
	}
} 
function getName() {
	return document.formReg.nickname.value;
}
функцию getName прикрутил, думал поможет, getName показывает правильный результат, то есть выдаёт точь в точь то что ввожу в поле. а страничка всё равно реагирует с опозданием в одну клавишу.