Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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
Jquery引导选择2插件问题与验证插件_Jquery_Twitter Bootstrap_Jquery Validate_Jquery Select2 - Fatal编程技术网

Jquery引导选择2插件问题与验证插件

Jquery引导选择2插件问题与验证插件,jquery,twitter-bootstrap,jquery-validate,jquery-select2,Jquery,Twitter Bootstrap,Jquery Validate,Jquery Select2,在我的bootstrap项目中,我试图使用插件select2,但我意识到了这一点 如果您使用此插件,您将无法再使用validate plugin验证我表单中的选定字段。 我会避免使用商业插件引导验证程序 <div class="container"> <div class="row"> <form id="test_form" action="?"> <div class="col-md-3"> &l

在我的bootstrap项目中,我试图使用插件select2,但我意识到了这一点 如果您使用此插件,您将无法再使用validate plugin验证我表单中的选定字段。 我会避免使用商业插件引导验证程序

<div class="container">
<div class="row">
    <form id="test_form" action="?">
        <div class="col-md-3">
            <div class="form-group">
                <label for="name">Foo</label>
                 <select class="form-control" id="foo" name="foo">
                     <option value=""></option>
                     <option value="1">1</option>
                     <option value="2">2</option>
                 </select>
            </div>
        </div>
        <div class="col-md-3">
            <div class="form-group">
                <label for="name">Bar</label>
                <select class="form-control" id="bar" name="bar">
                    <option value=""></option>
                    <option value="1">1</option>
                    <option value="2">2</option>
                </select>
            </div>
        </div>
        <div class="col-md-1">
            <button type="submit" class="btn btn-primary">VALIDATE</button>
        </div>
    </form>
</div>
</div>
你认为我怎样才能解决这个问题?谢谢


好的。这是对我有用的

/* select 2 plugin */
$('select#foo').select2();

/* Validation */
    $("#test_form").validate({
        ignore: 'input[type=hidden]',
        rules:
        {
            foo: { required: true },
            bar: { required: true }
        },
        errorPlacement: function (error, element) {
            $(element).parent().addClass('has-error');
        },
        success: function (label, element) {
            $(element).parent().removeClass('has-error');
        },
        submitHandler: function(form) {
            alert("validation ok");
        }
    });

我添加了一个“ignore:'input[type=hidden]”选项,因为Select2脚本向原始输入添加了一个隐藏选项,而Jquery验证器似乎忽略了它。然后,我将error类从元素上的“err”更改为父元素上的“has error”(带有form group类的div)

Ok。这是对我有用的

/* select 2 plugin */
$('select#foo').select2();

/* Validation */
    $("#test_form").validate({
        ignore: 'input[type=hidden]',
        rules:
        {
            foo: { required: true },
            bar: { required: true }
        },
        errorPlacement: function (error, element) {
            $(element).parent().addClass('has-error');
        },
        success: function (label, element) {
            $(element).parent().removeClass('has-error');
        },
        submitHandler: function(form) {
            alert("validation ok");
        }
    });

我添加了一个“ignore:'input[type=hidden]”选项,因为Select2脚本向原始输入添加了一个隐藏选项,而Jquery验证器似乎忽略了它。然后,我将error类从元素上的“err”更改为父元素上的“has error”(带有表单组类的div)

您保存了我!!非常感谢
ignore:“input[type=hidden]”
表示只忽略
input type=“hidden”
元素,而不是默认忽略所有隐藏元素。您可以使用
ignore:[]
指定忽略任何隐藏的内容,这也会起作用。否则,您可以指定忽略隐藏的
select
元素之外的所有内容。我不是专业开发人员。。我只知道它有效:D谢谢你的解释;)你救了我!!非常感谢
ignore:“input[type=hidden]”
表示只忽略
input type=“hidden”
元素,而不是默认忽略所有隐藏元素。您可以使用
ignore:[]
指定忽略任何隐藏的内容,这也会起作用。否则,您可以指定忽略隐藏的
select
元素之外的所有内容。我不是专业开发人员。。我只知道它有效:D谢谢你的解释;)对于最佳实践,您应该只添加/删除带有
高亮显示
取消高亮显示
的类,而不是带有
错误放置
成功
。。。这不是他们的目的。@Sparky-我为重复的内容道歉,我没有找到你的答案,这正是我想要的。.对于最佳实践,你应该只添加/删除带有
高亮显示
非高亮显示
,而不是
错误放置
成功
。。。这不是他们的目的。@Sparky-我为复制品道歉,我没有找到你的答案,这正是我想要的。。