ajax函数返回undefined
我有一个函数来使用AJAX(PHP)validation代码。 但是,当我尝试运行它时,它返回undefined
,它应该返回true
或false
。
function:
function verifyViite(viite) { $.get('dataminer.php?question=validateViite&q='+viite, function(data) { jQuery.globalEval(data); if(valid == 1) { return true; } else { return false; } }); }
data
valid = 1;
或者valid = 0;
由于AJAX请求是异步的,因此无法返回Callback返回值。
执行在回调本身内调用verifyViite
任何代码,而不是返回true或false。
或者,您可以拥有同步AJAX请求 。
因为函数veryViite不返回任何内容,undefined是预期的结果。 由于它的异步,你必须提供一个回调函数,该函数将在成功的ajax调用时调用。 像这样的东西;
function verifyViite(viite,cb) { $.get('dataminer.php?question=validateViite&q='+viite, function(data) { jQuery.globalEval(data); if(valid == 1) { cb(true); } else { cb(false); } }); }
电话会是这样的;
verifyViite(viite,function(good){ alert(good); });