繁体   English   中英

jQuery自定义验证消息

[英]Jquery custom validation messages

我在jquery中制作了联系表单,但在显示自定义验证消息时遇到了一些困难。 它仅显示带有消息的小弹出窗口:“请填写表格”,而不显示我指定的自定义消息。 我尝试了不同版本的验证插件,但没有用。 我遵循了多个教程,所有教程都获得了相同的结果。 你们中的一些人可以让我走上正确的道路,以便我自己完成此工作吗?

JQuery的

$(document).ready(function () {
$('#contact_form').validate({
    rules: {
        name: {
            required: true
        }
    },
    messages: {
        name: {
            required: "come on, you have a name don't you?"
        }
    },
    submitHandler: function (form) {
        $(form).ajxSubmit({
            type: "POST",
            data: $(form).serialize(),
            url: "",
            success: function () {
                $('#contact_form :input').attr('disabled', 'disabled');
                $('#contact_form').fadeTo("slow", 0.15, function () {
                    $(this).find(':input').attr('disabled', 'disabled');
                    $(this).find('label').css('cursor', 'default');
                    $('#success').fadeIn();
                });
            },
            error: function () {
                $('#contact_form').fadeTo("slow", 0.15, function () {
                    $('#error').fadeIn();
                });
            }
        });
    }
});
});

HTML

<form method="post" name="contact" id="contact_form">
                    <div class="row uniform collapse-at-2">
                        <div class="6u">
                            <input type="text" name="name" id="name" placeholder="Name" required="" />
                        </div>
                        <div class="6u">
                            <input type="email" name="email" id="email" placeholder="Email" required="" />
                        </div>
                    </div>
                    <div class="row uniform">
                        <div class="12u">
                            <input type="text" name="subject" id="subject" placeholder="Subject" required="" />
                        </div>
                    </div>
                    <div class="row uniform">
                        <div class="12u">
                            <textarea name="message" id="message" placeholder="Message" rows="6" required=""></textarea>
                        </div>
                    </div>
                    <div class="row uniform">
                        <div class="12u">
                            <ul class="actions">
                                <li>
                                    <input type="submit" class="special" value="Send Message" id="submit" name="submit" />
                                </li>
                                <li>
                                    <input type="reset" name="reset" id="reset" value="Reset Form" /></li>
                            </ul>
                        </div>
                    </div>
                </form>

下面的代码对我来说似乎很好。 确保在所有依赖库之前包含jQuery主库(例如,自动完成或其他插件)

<!DOCTYPE html>
<html lang="en">
<head>
<title>jQuery Autocomplete</title>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.11.1/jquery.validate.min.js"></script>

<script>

$(document).ready(function () {
$('#contact_form').validate({
    rules: {
        name: {
            required: true
        }
    },
    messages: {
        name: {
            required: "come on, you have a name don't you?"
        }
    },
    submitHandler: function (form) {
        $(form).ajxSubmit({
            type: "POST",
            data: $(form).serialize(),
            url: "",
            success: function () {
                $('#contact_form :input').attr('disabled', 'disabled');
                $('#contact_form').fadeTo("slow", 0.15, function () {
                    $(this).find(':input').attr('disabled', 'disabled');
                    $(this).find('label').css('cursor', 'default');
                    $('#success').fadeIn();
                });
            },
            error: function () {
                $('#contact_form').fadeTo("slow", 0.15, function () {
                    $('#error').fadeIn();
                });
            }
        });
    }
});
});

</script>
</head>

<body>

<form method="post" name="contact" id="contact_form">
                    <div class="row uniform collapse-at-2">
                        <div class="6u">
                            <input type="text" name="name" id="name" placeholder="Name" required="" />
                        </div>
                        <div class="6u">
                            <input type="email" name="email" id="email" placeholder="Email" required="" />
                        </div>
                    </div>
                    <div class="row uniform">
                        <div class="12u">
                            <input type="text" name="subject" id="subject" placeholder="Subject" required="" />
                        </div>
                    </div>
                    <div class="row uniform">
                        <div class="12u">
                            <textarea name="message" id="message" placeholder="Message" rows="6" required=""></textarea>
                        </div>
                    </div>
                    <div class="row uniform">
                        <div class="12u">
                            <ul class="actions">
                                <li>
                                    <input type="submit" class="special" value="Send Message" id="submit" name="submit" />
                                </li>
                                <li>
                                    <input type="reset" name="reset" id="reset" value="Reset Form" /></li>
                            </ul>
                        </div>
                    </div>
                </form>
</body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM