Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery验证重新验证_Javascript_Jquery_Validation - Fatal编程技术网

Javascript JQuery验证重新验证

Javascript JQuery验证重新验证,javascript,jquery,validation,Javascript,Jquery,Validation,我使用JQuery验证很好,但我需要以某种方式重新验证字段。我有一个文本字段,它有一个远程方面,工作正常。但是,上面有一个选择框可能会更改。如果选择框的值更改,我只希望再次进行验证。可能吗 $('#input').validate( { rules: { dbname: { required: true, minlength: 1,

我使用JQuery验证很好,但我需要以某种方式重新验证字段。我有一个文本字段,它有一个远程方面,工作正常。但是,上面有一个选择框可能会更改。如果选择框的值更改,我只希望再次进行验证。可能吗

$('#input').validate(
        {
            rules: {
                dbname: {
                    required: true,
                    minlength: 1,
                    onKeyUp: false,
                    remote: {
                        type:"post",
                        url:'createdb/checkdbname',
                        data: {
                            catserver: function(){
                                return $("#catserver").val();
                            },
                            prepend: function(){
                                return $("#prepend").text();
                            }

                        }
                    }

                },
                dataname: {
                    required: true
                },
                clientsel: {
                    required: true
                }

            },

            messages: {
                dbname: {
                    remote: "Database Already Exists on Server"

                }
            },
基本上,选择框catserver和dbname是相互依赖的。我不确定我是否正确处理了这个问题。如果有必要的话,我将使用引导程序来处理带有codeigniter的表单。基本上,在我验证好并且有人更改catserver的select值之后,不会再次验证dbname,除非我更改dbname字段的值

当然,您可以将更改事件绑定到应该触发验证的元素:

$('.my-select-box').on('change', validate);

function validate() {
   $('#input').validate(
        {
            rules: {
                dbname: {
                    required: true,
                    minlength: 1,
                    onKeyUp: false,
                    remote: {
                        type:"post",
                        url:'createdb/checkdbname',
                        data: {
                            catserver: function(){
                                return $("#catserver").val();
                            },
                            prepend: function(){
                                return $("#prepend").text();
                            }

                        }
                    }

                },
                dataname: {
                    required: true
                },
                clientsel: {
                    required: true
                }

            },

            messages: {
                dbname: {
                    remote: "Database Already Exists on Server"

                }
            },
// .......
}