0

パスワード リセット フォームで、2 つのパスワード入力 (password & password2) を検証して、それらが正規表現と一致し、特定の長さであり、互いに一致することを確認しています。問題があると、問題のある入力が強調表示され、エラー メッセージが表示されます。

両方の入力を正規表現と長さでチェックするために、「each」関数を使用していますが、機能しません。実際、そこにある場合、checkform()関数全体が実行されていないようです(アラートボックスでテストしました-アラートが表示する各関数を削除すると、そこにある場合は実行されません)。

スクリプトは次のとおりです。

  function checkform(){

alert("function running");
regex=/^[a-zA-Z0-9_]+$/;    

//This each function stops checkform() from running //

$("#password, #password2").each(function() {
    if($(this).val().length>5){
        $(this).css('border', '');
    } else {
        $(this).css('border', '1px solid red');
        $("#errormsg").html("Oops! Please enter a valid password");
        return false;           
    }
}
//End of problem code

if($("#password").val() != $("#password2").val()){
    $("#password").css('border', '1px solid red');
    $("#password").css('border', '1px solid red');
    $("#errormsg").html("Oops! Your passwords don't match");
    return false;
    } else {
        $("#errormsg").empty();
    }
   return true;
   }

誰が問題が何であるかを見ることができますか?

ありがとう

4

1 に答える 1