用jQuery而不是普通JavaScript进行引导表单验证?

用jQuery而不是普通JavaScript进行引导表单验证?,javascript,jquery,twitter-bootstrap,bootstrap-4,Javascript,Jquery,Twitter Bootstrap,Bootstrap 4,我在Bootstrap上找到了这个,以便使用Bootstrap表单验证。当其余的引导脚本都在jQuery中时,为什么这个示例是用普通JavaScript而不是jQuery 如何使用jQuery实现这一点 //示例starter JavaScript,用于在存在无效字段时禁用表单提交 (功能(){ "严格使用",; addEventListener('load',function()){ //获取要应用自定义引导验证样式的所有表单 var forms=document.getElementsB

我在Bootstrap上找到了这个,以便使用Bootstrap表单验证。当其余的引导脚本都在jQuery中时,为什么这个示例是用普通JavaScript而不是jQuery

如何使用jQuery实现这一点


//示例starter JavaScript,用于在存在无效字段时禁用表单提交
(功能(){
"严格使用",;
addEventListener('load',function()){
//获取要应用自定义引导验证样式的所有表单
var forms=document.getElementsByClassName('needs-validation');
//对它们进行循环并防止提交
var validation=Array.prototype.filter.call(表单,函数(表单){
表单.addEventListener('submit',函数(事件){
if(form.checkValidity()==false){
event.preventDefault();
event.stopPropagation();
}
form.classList.add('was-validated');
},假);
});
},假);
})();

这个例子很可能是用JS编写的,因为这是引导文档的作者最熟悉的。您可以将其转换为jQuery,如下所示:

(函数(){
"严格使用",;
$(窗口).on('load',function(){
$('.needs validation')。关于('submit',函数(e){
如果(!this.checkValidity()){
e、 预防默认值();
e、 停止传播();
}
$(this.addClass('was-validated');
});
});
})();

这个例子很可能是用JS编写的,因为这是引导文档的作者最熟悉的。您可以将其转换为jQuery,如下所示:

(函数(){
"严格使用",;
$(窗口).on('load',function(){
$('.needs validation')。关于('submit',函数(e){
如果(!this.checkValidity()){
e、 预防默认值();
e、 停止传播();
}
$(this.addClass('was-validated');
});
});
})();
使用Jquery验证:

$(文档).ready(函数(){
$(“#联系方式”)。验证({
规则:{
“复选框”:{
必填项:true
}
},
突出显示:功能(输入){
$(输入).addClass('is-invalid');
},
取消高亮度:功能(输入){
$(输入).removeClass('is-invalid');
},
errorPlacement:函数(错误,元素){
$(元素).next().append(错误);
}
});
});

立即发送
使用Jquery验证:

$(文档).ready(函数(){
$(“#联系方式”)。验证({
规则:{
“复选框”:{
必填项:true
}
},
突出显示:功能(输入){
$(输入).addClass('is-invalid');
},
取消高亮度:功能(输入){
$(输入).removeClass('is-invalid');
},
errorPlacement:函数(错误,元素){
$(元素).next().append(错误);
}
});
});

立即发送

这是引导源代码的正式部分吗?如果它是由第三方编写的,那么它很可能只是用他们觉得最舒服的方式编写的,而不是来自文档:这是引导源代码的官方部分吗?如果是第三方提供的,那么很可能只是用他们觉得最舒服的方式写的,而不是文档中的内容:最好还包括一个解释,说明是什么导致了最初的问题,以及您的答案如何帮助解决问题it@GMB问题是将一段普通JavaScript转换为jQuery。我觉得不需要任何解释。这对我来说是可行的,但作为一种验证两个密码是否相等的方式。最好还包括一个解释,说明是什么导致了最初的问题,以及您的答案如何帮助解决问题it@GMB问题是转换一个片段
<script>
// Example starter JavaScript for disabling form submissions if there are invalid fields
(function() {
  'use strict';
  window.addEventListener('load', function() {
    // Fetch all the forms we want to apply custom Bootstrap validation styles to
    var forms = document.getElementsByClassName('needs-validation');
    // Loop over them and prevent submission
    var validation = Array.prototype.filter.call(forms, function(form) {
      form.addEventListener('submit', function(event) {
        if (form.checkValidity() === false) {
          event.preventDefault();
          event.stopPropagation();
        }
        form.classList.add('was-validated');
      }, false);
    });
  }, false);
})();
</script>
$(document).ready(function(){

    $('.needs-validation').on('submit', function(e) {
      if (!this.checkValidity()) {
        e.preventDefault();
        e.stopPropagation();
      }

      $(this).addClass('was-validated');
    });

});