0

これが私のコードです。スクリプトが機能しているこのサイトと比較しましたが、私のコードが機能していない理由の違いを見つけることができないようです。私はおそらく単純なものを見逃しています。

これは私がスクリプトを入手したサイトですが、指示は少しあいまいです: http://rickharrison.github.io/validate.js/

これは実際の例を持っている人です: http://www.boutiqueapartments.com/index.php/contact/test

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<!-- Main style sheet-->
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css"/>
<!-- Validation script-->
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script type="text/javascript" src="../bugs/javascript/validate.min.js"></script>

<title></title>
</head>
<body>
<div class="success_box">All of the fields were successfully validated!</div>
<div class="error_box"></div>
<div id="container">
    <form name="create_bug" id="create_bug" method="post" action="bug_create.php" onSubmit="return FormValidator()">
    <div class="fm-req">
        <label for="bug_description">Bug Title:</label>
        <input type="text" name="bug_title" id="bug_title" value="" size="78" maxlength="250">
    </div>
    <input type="submit" name="formSubmit" value="Submit">
    </form>
</div>
<script type="text/javascript">
    new FormValidator('create_bug', [{
    name: 'bug_title',
    display: 'bug title',    
    rules: 'required'
}], function(errors, event) {
    var SELECTOR_ERRORS = $('.error_box'),
        SELECTOR_SUCCESS = $('.success_box');

    if (errors.length > 0) {
        SELECTOR_ERRORS.empty();
        SELECTOR_ERRORS.append(errors.join('<br />'));

        SELECTOR_SUCCESS.css({ display: 'none' });
        SELECTOR_ERRORS.fadeIn(200);
    }
    });
</script>
</body>
</html>

空白が「すべてのフィールドが正常に通過しました」または「オブジェクトオブジェクト」であっても返されるのは、私が間違っているアイデアはありますか?

4

1 に答える 1

1

エラーはオブジェクト配列です。単純な結合はできません。試す

new FormValidator('create_bug', [ {
    name : 'bug_title',
    display : 'bug title',
    rules : 'required'
} ], function(errors, event) {
    var SELECTOR_ERRORS = $('.error_box'), SELECTOR_SUCCESS = $('.success_box');

    if (errors.length > 0) {
        var errorString = '';
        $.each(errors, function(i, e) {
            errorString += e.message + '<br />';
        })

        SELECTOR_ERRORS.empty();
        SELECTOR_ERRORS.html(errorString);

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

そしてフィドルはここにあります。

于 2013-08-11T03:07:27.927 に答える