弹出窗口中的jquery表单验证

时间:2014-06-18 10:34:49

标签: php jquery codeigniter

我正在开发一个带有smarty模板的codeigniter中的应用程序,并且html页面准备就绪我必须开发那些页面。在那个应用程序中,有一个页面在lightbox中作为一个表单打开,我想把jquery验证放在我尝试过的地方

<script>
    $(document).ready(function(){
        $("#frm_email").validate({ 
            rules: {
                email: {
                    required: true,
                    email : true
                }
            },
            messages: {
                email: {
                    required:  "Email is required.",
                    email : "Enter valid email."
                }
            },
            // the errorPlacement has to take the table layout into account
            errorPlacement: function(error, element) {
                if ( $(element).is(":radio") ){
                    $(error).insertAfter( $(element).parent() );
                } else if ( $(element).is(":checkbox") ){ 
                    $(error).insertAfter( $(element).next() );
                } else{
                    if($(element).is("textarea")){
                        $(error).insertAfter($(element).next());
                    } else {
                        $(error).insertAfter( $(element) );
                    }
                }               
            },
            success: function(label ) {
                $(label).remove();          
            },
            onkeyup: function(element) { $(element).valid(); },
            onfocusout: function(element) { $(element).valid(); }
        });
    });
 });

此代码但它不起作用,我希望在表单提交之前进行表单验证。

所以请帮助我。

1 个答案:

答案 0 :(得分:0)

您需要使用jQuery包装器才能使其工作:

元素应为$(元素),错误应为$(错误)

if ( element.is(":radio") )
                    $(error).insertAfter( $(element).parent() );
                else if ( $(element).is(":checkbox") )
                    $(error).insertAfter( $(element).next() );
                //else{
                    else if($(element).is("textarea"))
                    $(error).insertAfter($(element).next());
                else
                    $(error).insertAfter( $(element) );
                //}

另外,我注意到如果其他条件错了,那就解决了。 (如果条件::正确检查,你还有其他条件)