0

在某一时刻,我的代码可以正确编译——所有行等等——但是在不同的地方(我的意思是函数)的相同代码不能完全编译。

这是代码:

function updateEmployeeFunction() {

    updateFields.username = $("#usernameTxtInfo").val();
    updateFields.password = $("#passTxtInfo").val();
    updateFields.confPasswrord = $("#confPassTxtInfo").val();
    updateFields.firstName = $("#firstNameTxtInfo").val();
    updateFields.lastName = $("#lastNameTxtInfo").val();
    updateFields.email = $("#emailTxtInfo").val();
    updateFields.phone = $("#phoneTxtInfo").val();

    validateUsernameUpdate(updateFields.username);
    validateEmailUpdate(updateFields.email);
    validateFirstNameUpdate(updateFields.firstName);
    ValidatePhoneUpdate(updateFields.phone);
    validatePasswordUpdate(updateFields.password);
    validateConfirmPasswordUpdate(updateFields.password, updateFields.confPasswrord);

    if (updateFields.usernameCheckSuccess == true && updateFields.emailCheckSuccess == true &&
            updateFields.firstNameCheckSuccess == true && updateFields.phoneCheckSuccess == true &&
            updateFields.passwordCheckSuccess == true && updateFields.confPassCheckSuccess == true) {

        callUpdateUser();
    }
}

这是更新用户的代码

function callUpdateUser() {
    $(".ajaxLoader").show();

    var URL = getUpdateUserUrl();
    $.ajax({
        type: "POST",
        url: URL,
        cache: false,
        processData: true,
        success: updateUserCallSuccess,
        error: ajaxError
    });
}

updateEmployeeFunction单击更新按钮时调用该函数,并且所有这些验证函数都updateFields.checks分别更新。

我的代码正在做的是它验证得很好,但它没有进入真正更新所在的 if 部分,但是当我将调试器放在它上面时,它运行正确。

我在这里做错了什么,我必须单击两次更新按钮才能使其正常工作?

顺便说一句,我正在 asp.net 中创建一个页面

4

1 回答 1

0

您是否使用 ajax 进行验证?我在想,当您到达更新时,验证可能尚未完成。通过埃拉德

这正是正在发生的事情,谢谢你的回复,

我将 if 延迟了 500 毫秒,现在,它完美地工作了......

于 2012-07-18T12:38:38.407 回答