函数里面的ajax调用响应不起作用

时间:2012-02-03 06:43:26

标签: ajax jquery

我需要检查语言已经存在条件{没有页面重新加载/加载},所以我在函数结束时调用了ajax。

我有一个疑问,我可以在ajax调用中调用函数来获取响应,然后返回true 语句执行????

我的代码:

function languageValid(){
    if( field1 === '' ){
        return false;
    }
    if( field2 === '' ){
        return false;
    }
    if( field3 === '' ){
        return false;
    }
    // e.g : ajax call
    $.post(sitePath+"candidate/index/langues-update",{},function(responce){
        // responce as  '0' or '1'
        exist   =   $.trim(responce);
        if(exist){
            return false;
        }else{
            return true;
        }
    });

    return true;
}

 calling function
 languageValid();

函数不等待ajax调用响应, 它将在ajax调用之前执行 return true 请分享你的建议!!!!

1 个答案:

答案 0 :(得分:0)

下面的bloc会从$ .post()函数返回一个值。

 if(exist){
        return false;
    }else{
        return true;
    }

如果您想获得回复,可以尝试:

    function languageValid(){ .....
    var result = $.post('url',{},function(responce){}).responseText;

    exist   =   $.trim(result);
     if(exist){
            return false;
    }else{
            return true;
    }
}