输入类型编号的jqBootstrapValidation

时间:2013-09-13 19:26:07

标签: jquery twitter-bootstrap twitter-bootstrap-3

据我了解,jqBootstrapValidation应自动验证html5元素,如下所示:

<input type="number" class="form-control" name="ordPrice" placeholder="Price" data-validation-number-message="Not a number">

但是,事实并非如此。这是我的js bind:

$('#create_form').find('input,select,textarea').not('[†ype="submit"], [type="file"]').jqBootstrapValidation({
    preventSubmit: true,        
    submitError: function($form, event, errors) {
        console.log('error!');
    },
    submitSuccess: function($form, event) {
        console.log('success!');
        event.preventDefault();
    },
    filter: function() {
        return $(this).is(':visible');
    }
});

我在这里错过了一些非常基本的东西吗?

1 个答案:

答案 0 :(得分:2)

虽然文档没有明确说明插件只适用于格式化/使用引导程序表单。

为了让您的示例工作,您的输入应该至少看起来像:

<div class="control-group"> 
  <div class="controls"> 
  <input type="number" class="form-control" name="ordPrice" placeholder="Price" data-validation-number-message="Not a number">
  </div>
</div>

如果没有control-groupcontrols,它将无效。来自输入的结构已经改变了Twitter的Bootstrap 3. control-group已被form-group替换以及许多其他更改。出于这个原因,这个插件还没有准备好与Twitter的Bootstrap 3一起使用。

另见:http://getbootstrap.com/css/#forms-control-states(验证状态)。您应该尝试让验证人员使用它。