我试图调用一个包含jQuery代码的函数。我想要这个函数返回jQuery语句的结果。它不工作,我试图找出原因。
function showGetResult (name) {
var scriptURL = "somefile.php?name=" + name;
return $.get(scriptURL, {}, function(data) { return data; });
}
alert (showGetResult("John"));
该警报显示“[object XMLHttpRequest]
”。但是,如果我自己运行jQuery语句,除了函数,它可以正常工作 - >$.get(scriptURL, {}, function(data) { alert(data); })
我希望能够重新使用此代码,通过将其放入一个函数返回$.get
数据。我在这里犯了什么根本错误?
感谢彻底的破解。切换到同步和使用外部变量传递数据的组合已经解决了我的问题。 – Kai 2009-10-28 20:12:46
这很好,但请注意,通过切换到同步,您可能会导致浏览器在等待响应时锁定。这可能是一个错误,除非你知道你的用户将永远在闪电般的连接和你的服务器永远不会被淹没。这也与AJAX的含义相反 - 它意味着让网络应用程序更具响应能力,但这种变化可能会使您的响应能力下降得更少。 – 2009-10-28 20:17:41
我同意@JacobM最好是在所有可能的情况下使用异步,并在回调中处理您的操作。 – tvanfosson 2009-10-28 21:00:19