为什么 jquery validate 插件 不起作用?

大家好!

我按照视频教程中的代码,试用表单验证插件,故意输入错误,但却没有任何 预期的错误提示。即使按了 提交,都没有错误提示。已经用中文 和英文搜索过,还是没有解决这个问题。我的相关文件引用路径 也是没问题的。

只好请明眼人 帮我看一下,到底是哪里出问题了?

<body>

<form action="" id="myform" method="post">
    <label for="myname">User Name </label>
    <input type="text" id="myname" name="myname">
    <br/><br/>
    
    <label for="email">E-Mail </label>
    <input type="text" id="email" name="email">
    <br/><br/>
    
    <label for="password">Password </label>
    <input type="password" id="password" name="password">
    <br/><br/>
    
    <label for="confirm_password">Confirm Password </label>
    <input type="password" id="confirm_password" name="confirm_password"> 
    
    <input class="submit" type="submit" value="Submit"/>

</form>


<script src="https://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
<script src="jquery.validate.min.js"></script> 

<script>
    $('#myform').validate({
        rules: {
            myname: { required: true },
            email: { required: true, email: true },
            password: { required: true, rangelength: [6, 8] },
            confirm_password: { equalTo: '#password' }
        },

        messages: {
            myname: { required: "must fill" },
            email: { required: 'must fill', email: 'format is wrong' },
            password: { required: 'must fill', rangelength: $.format('must have 6 numbers') },
            confirm_password: { equalTo: 'it is different'}
        }
    })
</script>

</body>

阅读 4k
1 个回答

默认在表单提交的时候验证,如果想实时验证,可以增加元素失去焦点等事件。
比如:

onfocusout: function(element){
        $(element).valid();
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进