2010-07-22 28 views
0

我試圖從一個Ajax調用得到一個返回值,但我不斷收到 「未定義」

function getUserName(targetName){ 

$阿賈克斯({

type: "GET", 
url: "http://servername/iMon/queryuser.pl?host="+targetName, 
dataType: "XML", 
success: function parseUserName(xml){ 
var userName = $(xml).find ('firstName').text()+' '+$(xml).find('lastName').text(); 
return userName; 

    }); 
+0

你應該接受你的問題的答案。 – SLaks 2010-07-22 20:04:42

+0

..現在回顧你的舊問題還不算太晚,並標記了你的工作方式! – Marc 2010-07-22 20:10:39

+0

對不起,這是一個noob錯誤。我回去接受了我的答案。如果我在返回之前爲userName添加警報,它會顯示正確的信息,所以我不相信這是XML的問題 – 2010-07-22 20:11:12

回答

3

你Ajax(Asynchronous JavaScript and XML)is Asynchronous

執行上下文被破壞,因爲parseUserName被調用以響應事件be ing被觸發,它不會被getUserName函數調用。

編寫成功處理程序以執行您想要對數據執行的任何操作。

+0

我只需要在另一個函數中執行請求,以便我可以使用它獲取的值。謝謝。 – 2010-07-22 20:22:24