Javascript子函数将return传递给父函数return

javascript child function pass the return to the parent function return

本文关键字:return 函数 子函数 Javascript      更新时间:2023-09-26

我想传递从"子"(我不知道正确的术语)函数返回到父函数的返回…怎么做才是正确的呢?Check_data()不返回true或false

function check_data(type,field){
    var chkvalue = $(field).val();
    $.post("mods/ajax.fieldchk.php", {
        chkvalue: chkvalue,
        type: type
    },
    function(result){
        if(result==0){
            $(field).css({'background-color': '#faa', 'border': '1px solid #f00'});
            return false;
        }else if(result==1){
            $(field).css({'background-color': '#afa', 'border': '1px solid #0f0'});
            return true;
        }
    };
}

感谢

由于$.post是一个异步函数,您不能使用它来返回check_data上的数据。然而,你可以传递一些回调并使用true/false参数执行。

像这样:

function check_data(type,field,callback){
    var chkvalue = $(field).val();
    $.post("mods/ajax.fieldchk.php", {
        chkvalue: chkvalue,
        type: type
    },
    function(result){
        if(result==0){
            $(field).css({'background-color': '#faa', 'border': '1px solid #f00'});
            callback(true);
        }else if(result==1){
            $(field).css({'background-color': '#afa', 'border': '1px solid #0f0'});
            callback(false);
        }
    };
}