我想返回x || $不用彷徨。換句話說,如果x爲真,則返回x,否則執行GET調用並返回服務器提供的值。返回本地變量或GET結果
我的嘗試在下面列出(理想情況下,它會遵循返回x || y格式,可能使用匿名函數而不是if/then)。
問題是我從我的$ .get函數返回似乎不是我所期望的。
希望能夠解釋發生了什麼。
感謝
$(function(){
function test(x,y) {
if(x==true) {return true;}
else{
//test.php is echo($_GET['y']==123);
$.get('ajax.php',{'y':y},function (status) {return status;});
}
}
alert(test(false,123));
});
'$ .get',像所有的AJAX默認調用,是*異步* - 立即返回給調用者,不會阻塞並等待結果。您需要重構您的'test'函數以接收回調,並在您通過ajax接收到該值時調用該回調函數。 – DCoder
是否可以這樣完成,如果x爲真,ajax調用永遠不會執行? – user1032531
是的,只需立即啓動回調,而不是在'$ .get'中使用它。 – apsillers