0

検証機能の外でエラーメッセージを編集したい。だから私は簡単なパスワード回復フォームを持っています。これがhtmlです:

<div style="position:relative; left:40%;" class="pass_recovery">
    <h2 class="title">Recover</h2>
    <form action="" method="POST" id="recover_pass">
        <span style="font-size:12px;">Email you registered with: </span><input type="text" name="recov_pass" id="recov_pass"<br>
        <input type="submit" value="Send Password">
    </form><br>
</div>

そして、これが検証のための私のjqueryです:

var pass_rec = $('#recover_pass').validate({
    onkeyup: false,
    errorClass: "password_messages",
    rules: {
        recov_pass: {
            required: true,
            email: true
        }
    },
    messages: {
        recov_pass: {
            required: "Please enter an email address",
            email: "Please enter a valid email address"
        }
    }
});

そして、ajax呼び出し。これは、入力された電子メールが有効な登録済みの電子メールアドレスであるかどうかを確認するだけです。

$('#recover_pass').submit(function() {
    if(pass_rec.form()) {
        var $this = $(this);  
        $.ajax({
            data: $this.serialize(), // get the form data
            type: "POST", // GET or POST
            url: "Private/Recover_pass.php", // the file to call
            success: function(data) { // on success..
                if(data=="pass") { 
                    $('.password_messages').text('good');
                }
                else {
                    $('.password_messages').text('bad');
                }
            },
            error: function(data) {
                $('.password_messages').text('error');
            },
            complete: function(data) {
                $('#recov_pass').val("");
            }
        });
    }
    return false; //so it doesn't refresh when submitting the page
});

たとえば、登録されていないダミーの電子メールを入力すると、メッセージexample@ex.comが表示されないため、これは機能しません。bad検証機能の外部でエラーメッセージを表示するにはどうすればよいですか?

4

1 に答える 1

1

結果文字列を「.password_messages」のクラスを持つページ上の領域に配置しようとしていますが、htmlのサンプルコードには表示されません。それがあなたのページのどこかにあると確信していますか?

次のようなターゲットが必要です。

<span class='.password_messages'></span>

そして、それはあなたが結果のテキストを見ることを期待するところですよね?

于 2012-11-21T20:56:47.627 に答える