javascript - Formvalidation.io - 无法读取 null 的属性 'classList'

标签 javascript html css invisible-recaptcha formvalidation.io

使用 formvalidation.io 时,我的控制台总是出现错误。

enter image description here

我不知道这个错误的原因是什么。我在某些网站上仍然会收到垃圾邮件,即使我正在使用 backendVerificationURL。我正在使用 Invisible ReCaptcha ( https://formvalidation.io/guide/plugins/recaptcha/ )

我的 HTML 表单:

                                <form id="contact" method="post" action="/vendor/contact-form.php">
                                <div class="card-body">
                                    <div class="row">
                                        <div class="col-md-6">
                                            <div class="form-group label-floating is-empty">
                                                <label class="bmd-label-floating">Naam</label>
                                                <input type="text" name="naam" id="naam" class="form-control">
                                                <span class="material-input"></span>
                                            </div>
                                        </div>
                                        <div class="col-md-6">
                                            <div class="form-group label-floating is-empty">
                                                <label class="bmd-label-floating">Telefoonnummer</label>
                                                <input type="text" name="telefoon" id="telefoon" class="form-control">
                                                <span class="material-input"></span>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="form-group label-floating is-empty">
                                        <label class="bmd-label-floating">Mailadres</label>
                                        <input type="email" name="email" id="email" class="form-control">
                                        <span class="material-input"></span>
                                    </div>
                                    <div class="form-group label-floating is-empty">
                                        <label for="bericht" class="bmd-label-floating">Uw bericht</label>
                                        <textarea name="bericht" class="form-control" id="bericht" rows="6"></textarea>
                                        <span class="material-input"></span>
                                    </div>
                                </div>
                                <div class="card-footer justify-content-between">
                                    <div class="form-check">
                                        <!-- De captcha container -->
                                        <div id="captchaContainer"></div>
                                    </div>
                                    <button type="submit" class="btn btn-brown">Aanvragen</button>
                                </div>
                            </form>

这是我的验证脚本 (validation-contact.js):

document.addEventListener('DOMContentLoaded', function(e) {
FormValidation.formValidation(
    document.getElementById('contact'),
    {
    fields: {

        naam: {
            validators: {
                notEmpty: {
                    message: 'Vul alstublieft uw naam in'
                }
            }
        },
        telefoon: {
            validators: {
                phone: {
                    country: 'NL',
                    message: 'U heeft een ongeldig telefoonnummer ingevuld'
                },
                notEmpty: {
                    message: 'Vul alstublieft uw telefoonnummer in'
                }
            }
        },
        email: {
            validators: {
                notEmpty: {
                    message: 'Vul alstublieft uw emailadres in'
                },
                emailAddress: {
                    message: 'U heeft een ongeldig emailadres ingevuld'
                }
            }
        },
    },
    plugins: {
        trigger: new FormValidation.plugins.Trigger(),
        bootstrap: new FormValidation.plugins.Bootstrap(),
        submitButton: new FormValidation.plugins.SubmitButton(),
        defaultSubmit: new FormValidation.plugins.DefaultSubmit(),
        icon: new FormValidation.plugins.Icon({
            valid: 'fa fa-check',
            invalid: 'fa fa-times',
            validating: 'fa fa-refresh',
        }),
        recaptcha: new FormValidation.plugins.Recaptcha({
            element: 'captchaContainer',
            message: 'The captcha is not valid or expired',
            // Replace with the site key provided by Google
            siteKey: 'MYSITEKEY',
            badge: 'bottomleft',
            theme: 'light',
            size: 'invisible',
            backendVerificationUrl: '/vendor/verification-url.php',
        }),
    },
})

});

编辑: 在我的页面头部,我有:

    <link rel="stylesheet" href="/assets/css/fontawesome-all.css" />
<link rel="stylesheet" href="https://unpkg.com/tachyons@4.10.0/css/tachyons.min.css">
<link rel="stylesheet" href="/vendor/formvalidation/dist/css/formValidation.min.css">

在页脚中:

    <script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.35.3/es6-shim.min.js"></script>    
<script src="/vendor/formvalidation/dist/js/FormValidation.min.js"></script>
<script src="/vendor/formvalidation/dist/js/plugins/Recaptcha.min.js"></script>
<script src="/vendor/formvalidation/dist/js/plugins/Tachyons.min.js"></script>
<script src="/vendor/formvalidation/dist/js/plugins/Bootstrap.min.js"></script>

编辑:编辑:

我页面的底部是这样的: enter image description here

最佳答案

我在 FormValidaiton.io 的 1.3 版中遇到了一个非常相似的问题。为了它的值(value),为了防止它对你有帮助,我通过将任何 form-check DIV 元素嵌套在 form-group DIV 中解决了我的问题。

<div class="form-group"><div class="form-check"></div></div>

另一种有效的替代方法是使用 rowSelector 选项 - 如此处示例中所指定。

https://formvalidation.io/guide/examples/validating-checkbox-list-placed-multiple-columns/

关于javascript - Formvalidation.io - 无法读取 null 的属性 'classList',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53186532/

相关文章:

JavaScript:允许访问您尝试访问的 attr 的 __defineGetter__ 版本?

javascript - 如何将ajax值传递给同一页面上的php变量?

html - iOS iframe 问题

html - 规则 CSS 部分应用

html - 如何在链接旁边显示弹出窗口

javascript - jQuery 中的旋转轮

javascript - Dimple.js - 将数据标签添加到条形图的每个条形

Javascript 使用 CSS3 转换为样式更改设置动画

jquery - 花式盒子 2 : put thumbnails within a parent div

html - 页脚未正确对齐