2013-02-03 47 views
2

這是我的js代碼Ajax代碼不工作

function load(div_tag,thefile) 
{ 

    if(window.XMLHttpRequest) 
    { 
     xmlhttp = new XMLHttpRequest(); 
    } 
    else 
    { 
     xmlhttp = new ActiveXObject('Microsoft.XMLHTTP'); 
    } 
    xmlhttp.onreadystatechange = function() 
    { 
     if(xmlhttp.readyState == 4 && xmlhttp.status == 200) 
     { 
      document.getElementById(div_tag).innerHTML = xmlhttp.responseText; 
     } 
    } 
    xmlhttp.open('GET', thefile, true); 
    xmlhttp.send(); 
} 

,這我的PHP代碼

echo '<div style="float:left; margin-left:2px; margin-top:17px; background:#666; text-align:center; width:auto;"><a href="#div" onclick="load(\'div\',\'include/comment_form.php\')" style="text-decoration:none;"><b style="color:white;">Add comment</b></a></div>'; 

echo '<div id="div" align="left" style="clear:both;"></div>'; 

的問題是它的工作在XAMPP,但它並不在我的網站工作。我是一個首發,請幫助我。

+0

任何錯誤信息? – Sirko

+1

它在哪裏*不*工作?例如''a''標籤onclick'取決於* load *的返回值 - 它不返回任何東西,因此依賴於瀏覽器(使其返回* true *來激活重定向)。 –

+0

如何以及在哪裏調用'load'函數? – ShuklaSannidhya

回答

2

答案,以適應成功評論:

功能load()應該返回一個值,因爲它是在onclick處理程序<a標籤。由於load()不返回任何內容,因此結果取決於瀏覽器。

load()剛剛返回真正激活錨控制檯重定向上

function load(div_tag,thefile) 
{ 
    ... 
    xmlhttp.open('GET', thefile, true); 
    xmlhttp.send(); 

    return true; 
}