2011-02-25 52 views
0

我的javascript/ajax代碼第一次運行,但沒有之後。當函數被再次調用時,GetAttribute元素爲空。我嘗試使用createElement和AppendChild,但它做同樣的事情。如果我沒有需要的getAttribute它的工作很好,但我不能得到的功能與getAttribute方法工作。任何幫助,將不勝感激。Ajax調用只能在第一時間運行

function ajaxFunction(Picked) { 
var getdate = new Date(); 
if(xmlhttp) { 
    var Pic1 = document.getElementById("Pic1").getAttribute("name"); 
    var Pic2 = document.getElementById("Pic2").getAttribute("name"); 
    if (Picked === Pic1){ 
    var Chosen = Pic1; 
    var NotChosen = Pic2; 
} 
else { 
    var Chosen = Pic2; 
    var NotChosen = Pic1; 
} 
    xmlhttp.open("POST","choice.php",true); 
    xmlhttp.onreadystatechange = handleServerResponse; 
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
    xmlhttp.send("Chosen=" + Chosen + "&NotChosen=" + NotChosen); 
    } 
} 

function handleServerResponse() { 
    if (xmlhttp.readyState == 4) { 
    if(xmlhttp.status == 200) { 
     var response = xmlhttp.responseText; 
     response = response.split("|"); 
     document.getElementById('Pic1').innerHTML = response[0];//New Pic 
     document.getElementById('Pic2').innerHTML = response[1];   
    } 
    else { 
    alert("Error. Please try again"); 
    } 
} 
} 
+0

有沒有原因,你不使用框架/庫? – 2011-02-25 17:53:21

+0

愛好,我只是編程爲自己和朋友。還沒有坐下來學習jquery等的來龍去脈 – user634510 2011-02-25 18:06:22

回答

1

更改if

if (Picked === Pic1) 

通過寫if (Picked = Pic1),你分配PickedPic1

+0

對不起,仍然無法取得圖片的名字 – user634510 2011-02-25 17:56:51