2010-07-22 29 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