如何在function2中返回的function1中获取字符串的值

时间:2011-03-15 08:45:46

标签: javascript

如何获得function2中返回的function1中的字符串值,即

function fnc1(){
var text = fnc2("Pencils");
alert(text);
}

function fnc2(mytext){
$.post("process.php", {t:mytext}, function(data){
return data;
});
}

在process.php中

<?php
echo $_POST['t'];
?>

它返回undefined。

1 个答案:

答案 0 :(得分:3)

您不能从像这样的ajax请求返回值。唯一可行的方法是将async设置为false,然后将响应保存到变量并将其返回到ajax调用之外。但这可能不是你想要的,因为它会在等待响应时锁定。

您可以将要执行的功能传递给第二种方法,如下所示:

function fnc1(){
   fnc2("Pencils", function(data) { alert(data) });
}

function fnc2(mytext, callback){
   $.post("process.php", {t:mytext}, callback);
}