禁用输入,直到使用引导程序验证器验证以前的输入
Disable input until previous input is validated with bootstrap-validator
我正在使用引导验证程序,它非常适合验证,但我现在需要禁用一个输入,直到前一个输入得到验证。我查看了引导验证程序,看到了这些事件,看起来它们在这个过程中会有所帮助,但我不知道如何在输入id上调用它们。
HTML
<form role="form" data-toggle="validator">
<div class="form-group">
<input type="text" class="form-control" id="login-name" placeholder="Your Name" data-error="Please provide a valid name" required>
<div class="help-block with-errors"></div>
</div>
<div class="form-group">
<input type="text" class="form-control" id="chosen-name" placeholder="Your Chosen Name" data-error="Please provide a valid name" required disabled>
<div class="help-block with-errors"></div>
</div>
<button type="submit" class="btn btn-default action-btn">Submit</button>
</form>
JS
//Bootstrap Validator
$('form').validator({
// Trying to check if #login-name is valid, obviously not working!!!
if(valid.#login-name){
$('#chosen-name').prop('disabled', false);
} else{
$('#chosen-name').prop('disabled', true);
}
});
您的js应该是这样的:
$('form')
.validator()
.on('valid.bs.validator', function (e) {
if(e.relatedTarget.id==='login-name')
{
$('#chosen-name').prop('disabled', false);
}
})
.on('invalid.bs.validator', function (e) {
if(e.relatedTarget.id==='login-name')
{
$('#chosen-name').prop('disabled', true);
}
})
由于它使用了约束验证API,因此您可以使用
//Bootstrap Validator
$('form').validator().on('validated.bs.validator', function(e){
var target = e.relatedTarget;
if (target.id == 'login-name'){
$('#chosen-name').prop('disabled', !target.checkValidity());
}
})
演示位置http://codepen.io/gpetrioli/pen/MaGJzL?editors=001
相关文章:
- 是否有一种方法可以使用公共代码库在Java和JavaScript中进行输入验证
- 输入验证&使用javascript或asp返回
- 带有输入验证的Javascript
- 表单和输入验证
- 输入验证仅在lur上
- 使用jQuery进行输入验证
- 如何在 JavaScript 中将输入验证为数字
- 使用正则表达式进行输入验证
- Int 输入验证 - 解析服务器云代码
- jQuery/JS 输入验证
- 使用 Angular 要求输入启用注册:需要输入/验证
- 比较输入验证HTML JavaScript中的两个输入值
- simpleCart(js)将表单输入验证添加到电子邮件结账提交中
- Javascript:输入验证
- 淘汰计算和输入验证
- 使用javascript addevent监听器在引导程序html表单上输入验证
- 使用JavaScript进行输入验证
- HTML 5表单输入验证
- 禁用输入类型=数字的输入验证
- AngularJs表单中的输入验证