Javascript/jQuery undefined

Javascript/jQuery undefined

本文关键字:undefined jQuery Javascript      更新时间:2023-09-26
标题

被命名为"jQuery/Javascript undefined"的原因不是因为我认为jQuery是一种语言,我知道jQuery是一个javascript语言库,以防万一一些迂腐的读者读到这个。我之所以把它写成标题,是因为我不知道代码出了什么问题,jQuery或Javascript(所有jQuery的代码都编译了)是错误的。

好的,回到问题,看看下面的代码,他们给了我一个未定义的值

//username validation
function username_val(){
    username_value = $("input[name='username']").val();
    span_error = "span[name='username_error']";
    $(span_error).load('ajax_signup_username', {php_username_error:username_value},  function(){
        return true;
    });
}

我提醒了这一点,然后返回"未定义"。我假设会返回一个 true。

function final_val(){
        alert( username_val() );
}

编辑:你们中的一些人说我只能在成功参数上返回true,但我需要这个进行验证,所以如果所有验证方法都为true,则final_val将返回true。关键是我需要在 final_val() 中有一个真正的值,或者如果你们有其他方法来验证它,请告诉我。注意:我很着急,如果我误解了你的回答,请原谅我。我会离开几个小时,在那之前我会检查你的答案。

谢谢!

您需要在成功函数中进行alert( username_val() );。由于.load()是异步方法,因此在立即调用后无法return true。所以你可以试试这个:

 $(span_error).load('ajax_signup_username', {php_username_error:username_value},  function(){
     alert('Something');
     var response = true;
     final_val(response);
 });
 function final_val(response){
     alert( response);
 }

这里是 DOCO