2013-04-22 98 views
0

Iam初學者到ajax。當我用AJAX搜索功能,它在延遲啓動操作XMLHttpRequest延遲開始會話

<script> 
function showUser(str) 
{ 
if (str=="") 
    { 
    document.getElementById("txtHint").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("txtHint").innerHTML=xmlhttp.responseText; 
    } 
    } 
xmlhttp.open("GET","getuser.php?gender="+str,true); 
xmlhttp.send(); 
} 
</script> 

product.php頁面上的單選按鈕被點擊showUser(str)被調用。該值以可變gender訪問的getuser.php和會話開始與價值varible gender並使用會話變量

$sql="SELECT * FROM tbl_product WHERE gender = '".$_SESSION['gender']."'"; 

執行SQL查詢和值在txtHint DIV ECHOE。我的問題是當我第一次點擊收音機時,功能被調用,但是頁面中沒有回顯該值。當我重新加載頁面並再次嘗試時,它工作正常。請幫助修復此問題

三江源

回答

0

把你的代碼中

window.onload 

功能。像這樣

window.onload = function() { 
     function showUser(str) 
{ 
    if (str=="") 
     { 
     document.getElementById("txtHint").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("txtHint").innerHTML=xmlhttp.responseText; 
     } 
     } 
    xmlhttp.open("GET","getuser.php?gender="+str,true); 
    xmlhttp.send(); 
} 
}; 
+0

謝謝你們response.I使用你的代碼,但它不是爲我工作:(@chandresh_cool – Anoop 2013-04-22 07:15:14