Reputation: 149
I need to display a name in the textbox with id = txtName
using an ajax function, but it won't work. The following is my ajax function:
function showName(str) {
if (str.length == 0) {
document.getElementById("txtName").innerHTML = "";
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("txtName").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", "getname.php?q="+str, true);
xmlhttp.send();
}
Upvotes: 2
Views: 214
Reputation: 694
You have to chnage the innerHTML to value, since the former will be changing the value of the element having the id "txtName".
Hope this helps.
function showName(str)
{
if (str.length==0)
{
document.getElementById("txtName").innerHTML="";
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("txtName").value=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getname.php?q="+str,true);
xmlhttp.send();
}
Upvotes: 3