【发布时间】:2012-03-03 00:50:01
【问题描述】:
我正在尝试从名为“tjekdet”的函数返回一个字符串,但它不会返回任何内容,但未定义。我只需要它返回字符串,所以我可以将结果附加到 $(this)。
我之所以这样做,是因为对 test2.php 的请求大约需要 40 秒,所以我宁愿一个一个地做。不过没关系。
这是否与同步调用有关?还是我只是完全错过了一些非常基本的东西?
function tjekdet(name) {
$.get("test2.php", { test: name },
function(data){
// alert(data); returns correctly in the alert
return data;
});
}
jQuery(function($) {
$('.button').live("click",function() {
$(".navn-list").each(function() {
var navn = $(this).text();
var tester = tjekdet(navn);
alert(tester); // returns undefined
});
});
【问题讨论】:
-
tjekdet 的结果不会是调用
$.get的结果,因为正如您在问题中暗示的那样,$.get是异步执行的。 -
这个问题每天都会出现,但是当我需要它作为重复关闭时我永远找不到。
标签: jquery ajax function return each