0

コードを使用して登録フォームを確認します:http ://rickharrison.github.com/validate.js/これが私のカスタムコードです:

<!DOCTYPE html>
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

     <link href="./js/main.css" rel="stylesheet" type="text/css">

    <script type="text/javascript" async="" src="./js/ga.js"></script>
    <script type="text/javascript" src="./js/jquery.min.js"></script>
    <script type="text/javascript" src="./js/validate.min.js"></script>
</head>
<body>


    <form name="createAccount" action="validate.php" method="POST">
        <label for="fname">First name:</label>
        <input name="fname" id="fname">

        <label for="lname">Last name:</label>
        <input name="lname" id="lname">
         <br/>
        <label for="email">Email:</label>
        <input name="email" id="email">
         <br/>
        <label for="password">Password:</label>   
        <input name="password" id="password" type="password">
         <br/>
        <label for="vPassword">Re-type password:</label> 
        <input name="vPassword" id="vPassword" type="password">
         <br/>
        <button class="button gray" type="submit" name="submit">Submit</button>
    </form>
    <div class="success_box">Si jvois ca ben tbnk</div>
    <div class="error_box"></div>
<script type="text/javascript">

    new FormValidator('createAccount', [{
        name: 'fname', 
        display: 'Please enter your first name.',
        rules: 'required'
    }, {
        name: 'lname',
        display: 'Please enter your name.',
        rules: 'required'
    }, {
        name: 'email',
        display: 'Please enter a valid email address.',
        rules: 'valid_email'
    }, {
        name: 'password',
        display: 'Please enter a password of at least 8 characters.',
        rules: 'required|min_length[8]'
    }, {
        name: 'vPassword',
        display: 'The passwords do not match.',
        rules: 'required|matches[password]'
    },  ], function(errors, event) {
        var SELECTOR_ERRORS = $('.error_box'),
            SELECTOR_SUCCESS = $('.success_box');
        if (errors.length > 0) {
            SELECTOR_ERRORS.empty();

            for (var i = 0, errorLength = errors.length; i < errorLength; i++) {
                SELECTOR_ERRORS.append(errors[i].message + '<br />');
            }

            SELECTOR_SUCCESS.css({ display: 'none' });
            SELECTOR_ERRORS.fadeIn(200);
        } else {
            SELECTOR_ERRORS.css({ display: 'none' });
            SELECTOR_SUCCESS.fadeIn(200);
        }

        if (event && event.preventDefault) {
            event.preventDefault();
        } else if (event) {
            event.returnValue = false;
        }
    });

    </script>


</body>
</html>

「success_box」をvalidate.phpページにリダイレクトする関数に変更しようとしましたが、何も機能しませんでした。success_boxにすべてを削除して、エラー数が0の場合にリダイレクトする関数を作成してみました

if (errors === 0){ window.location = "http://www.google.com/";}   

しかし、それもうまくいきませんでした。私は答えがありません...

ありがとう!

4

2 に答える 2

0

試す

if (errors == 0){ window.location = "http://www.google.com/";}

=シングルをコンディションで使用することはできません。

于 2013-03-25T02:41:33.690 に答える
0

それが実際に機能しているように見えます!!

}, ], function(errors, event) {バリデータールール配列の最後のオブジェクトの後のコンマを削除しました。

ああ、わかってるよ。フォームを通常のフォームとして機能させたい場合は、データが有効であればpreventDefault()、その場合は呼び出さないでください(デフォルトのフォームの動作が必要なため)。

于 2013-03-25T03:18:27.733 に答える