1

标题命名为“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() 中的真实值,或者如果你们有其他方法来验证它,请告诉我。注意:我很着急,所以如果我误解了你的答案,请原谅我。我会离开几个小时,在那之前我会检查你的答案。

谢谢!

4

1 回答 1

2

您需要制作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);
 }

是医生

于 2012-05-25T10:18:30.203 回答