Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.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 引导程序3:具有表单验证的向导_Javascript_Jquery_Html_Jquery Validate_Twitter Bootstrap 3 - Fatal编程技术网

Javascript 引导程序3:具有表单验证的向导

Javascript 引导程序3:具有表单验证的向导,javascript,jquery,html,jquery-validate,twitter-bootstrap-3,Javascript,Jquery,Html,Jquery Validate,Twitter Bootstrap 3,我想创建一个带有表单验证的向导。我使用来自的Twitter引导向导插件。它使用jQuery验证插件 我现在的问题是单选按钮的验证不起作用。即使没有选中单选按钮,我也可以跳过“选项卡” 有人知道我做错了什么吗 这是我的Javascript代码: <script> $(document).ready(function() { var $validator = $("#commentForm").validate(); $('#rootwizard').boots

我想创建一个带有表单验证的向导。我使用来自的Twitter引导向导插件。它使用jQuery验证插件

我现在的问题是单选按钮的验证不起作用。即使没有选中单选按钮,我也可以跳过“选项卡”

有人知道我做错了什么吗

这是我的Javascript代码:

    <script>
$(document).ready(function() {
    var $validator = $("#commentForm").validate();

    $('#rootwizard').bootstrapWizard({
        'tabClass': 'nav nav-pills',
        'onNext': function(tab, navigation, index) {
            var $valid = $("#commentForm").valid();
            if(!$valid) {
                $validator.focusInvalid();
                return false;
            }
        }
    }); 
    window.prettyPrint && prettyPrint()
}); 
</script>

$(文档).ready(函数(){
var$validator=$(“#commentForm”).validate();
$(“#根向导”).bootstrapWizard({
“tabClass”:“导航丸”,
“onNext”:函数(选项卡、导航、索引){
var$valid=$(“#commentForm”).valid();
如果(!$有效){
$validator.focusInvalid();
返回false;
}
}
}); 
window.prettyPrint&&prettyPrint()
}); 
我的输入元素如下所示:

<div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary">
    <input class="required" id="question21" name="question2" required="" type="radio"> 1</label> 
<label class="btn btn-primary">
    <input id="question22" name="question2" type="radio"> 2</label> 
<label class="btn btn-primary">
    <input id="question23" name="question2" type="radio"> 3</label> 
<label class="btn btn-primary">
    <input id="question24" name="question2" type="radio"> 4</label> 
<label class="btn btn-primary">
    <input id="question25" name="question2" type="radio"> 5</label></div>

1.
2.
3.
4.
5.
这里是网站的完整代码:


提前谢谢

您已经在HTML标记中两次声明了
必需的
规则

<input class="required" id="question21" name="question2" required="" type="radio"> 

1) 按类:
class=“required”
name=“question2”
单选按钮设置为required

2) 通过HTML5属性:
required=”“
正在声明
name=“question2”
单选按钮设置为非必需

显然jQuery验证插件优先于HTML5属性

您只需要使用一种方法来声明规则。使用
class
或HTML5属性,而不是两者都使用。如果决定保留HTML5属性,则使用
required=“required”


编辑

引用OP的评论:

“…但无论是
class=“required”
还是
required=“required”
都有效:-(你有其他想法吗?”

你的意思是说这两部作品都不是?这两部作品都很好,还有另一种方法

class=“required”
声明的规则:

required=“required”
声明的规则:

.validate()中声明的规则。


否则,您没有显示的代码中会出现问题。

谢谢您的回复!但是class=“required”或required=“required”都可以工作:-(您有其他想法吗?对不起,我的意思是两者都没有。我的错!您的解决方案都可以工作。但是只有在我使用Bootstrap 2的情况下,它才能工作。如果我使用Bootstrap 3,则无法工作:-(