【问题标题】:bootstrapValidator-enable and disable field validationbootstrapValidator-启用和禁用字段验证
【发布时间】:2017-01-30 07:40:49
【问题描述】:

所以;我尝试在线检查几个解决方案,但找不到解决我使用 bootstrapvalidator 启用和禁用字段验证的问题的解决方案。

当有人输入负数(例如 -4、-100、-545 等)和任何非数字的数字(例如 4.4.4、4.r、4t)时,我有一个应该给出错误的字段等等)。 但是我想设置一个在用户输入 -999 时不会出错的条件。

当用户输入其他非负数和非数字的数字时,代码运行良好。如果用户输入负数或非数字,则会显示错误。用户输入 -999 时的问题验证为真(不显示错误),但如果用户将数字(-999)更改为其他数字,如负数和非数字,我的字段验证停止工作(意味着不显示任何错误,尽管它应该显示)。

那么如何启用和禁用字段验证或设置字段验证条件以使用 bootstrapValidator 解决我的问题..???

希望你们已经遇到过这样的问题,希望你们能帮我解决这个难题。

您可以在这里尝试:https://jsfiddle.net/os3b0dqx/ 看看它是如何工作的

my template.html looks like:
<form class="well form-horizontal" action=" " method="post"  id="myform">
<div class="form-group">
<label class="col-xs-3 control-label">Length</label>
<div class="col-xs-5">
<input type="text" class="form-control" id="length" name="length" />
</div>
</div>
<div class="form-group">
<div class="col-xs-5 col-xs-offset-1">
<button type="submit" class="btn btn-default">Submit</button>
</div> 
</div>
</form>
<script>
$(document).ready(function () {
$('#myform').bootstrapValidator({
feedbackIcons: {
validating: 'glyphicon glyphicon-refresh'    
 },
fields: { 
length: {
validators: {
greaterThan: {
value:0,
message: 'The value must be greater than or equal to zero'
 },
numeric: {
message: 'The value is not a number',
thousandsSeparator: '',
decimalSeparator: '.'
},
notEmpty: {
message: 'Please fill the length' }
}
},
}
}).on('click keyup input change','[name="length"]',function(){
if ($(this).val() == -999) {
$('#myform').bootstrapValidator('enableFieldValidators','length',false);
  }
else{
$('#myform').bootstrapValidator('validateField','length');
//$('#myform').bootstrapValidator('enableFieldValidators','length',true);
// both "validateField" and "enableFieldValidators" doesn't work for me..
}
});
});

【问题讨论】:

    标签: javascript jquery twitter-bootstrap-3 bootstrapvalidator jqbootstrapvalidation


    【解决方案1】:

    将此if ($(this).val() == -999) 更改为if ($(this).val() == '-999')

    【讨论】:

    • 感谢您的回答@trushar widetech;但是您的解决方案没有解决问题。我要做的是在输入-999 后重新验证我的字段。看到问题;在输入 -999 之前,字段验证工作得很好,但是在输入 -999 之后,如果我将该数字 (-999) 更改为任何其他数字,比如说 -8 或 67f 或 6.7.7 字段验证不会显示错误消息。似乎 ($('#myform').bootstrapValidator('validateField','length');) 不要重新验证我的字段
    • 你能在sn-p中添加你的代码,这样我就能明白你到底想要什么
    猜你喜欢
    • 1970-01-01
    • 2019-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-10
    相关资源
    最近更新 更多