I have a search bar which list users depend what the person types which works well, however its a little slow and i'd like to show a loading message, how would i go about doing it?
Here's what i have so far
Code:
<script type="text/javascript">
function showResult(str)
{
if (str.length==0) {
document.getElementById("livesearch").innerHTML="";
document.getElementById("livesearch").style.border="0px";
return;
}
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("livesearch").innerHTML=xmlhttp.responseText;
document.getElementById("livesearch").style.border="1px solid #A5ACB2";
}
}
xmlhttp.open("GET","livesearch.php?u="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form>
<input type="text" size="30" style="width:300px;" onkeyup="showResult(this.value)" />
<div id="livesearch" style="width:300px;" ></div>
</form>
I'd guess it would be a readyState thing but thats just a guess, im new to AJAX >.<