如何获得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。
答案 0 :(得分:3)
您不能从像这样的ajax请求返回值。唯一可行的方法是将async设置为false,然后将响应保存到变量并将其返回到ajax调用之外。但这可能不是你想要的,因为它会在等待响应时锁定。
您可以将要执行的功能传递给第二种方法,如下所示:
function fnc1(){
fnc2("Pencils", function(data) { alert(data) });
}
function fnc2(mytext, callback){
$.post("process.php", {t:mytext}, callback);
}