Javascript 我定制的欧芹新品不起作用

Javascript 我定制的欧芹新品不起作用,javascript,jquery,twig,parsley.js,Javascript,Jquery,Twig,Parsley.js,我正在使用parsley.js验证我的表单。 我想用ajax检查数据库中是否存在元素。 所以我这样做了: {{ form_widget(form.companyname, {'attr': {'class': 'md-input', 'required':'', 'data-parsley-company':'3'}}) }} <script> $('#sbcplatformbundle_fournisseur_companyname').on('ch

我正在使用parsley.js验证我的表单。 我想用ajax检查数据库中是否存在元素。 所以我这样做了:

   {{ form_widget(form.companyname, {'attr': {'class': 'md-input', 'required':'', 'data-parsley-company':'3'}}) }}

    <script>
        $('#sbcplatformbundle_fournisseur_companyname').on('change', function () {
            $comanyname = $('#sbcplatformbundle_fournisseur_companyname').val();
            var url = '{{ path('fournisseur_bycompanyname', {'companyname': 'companyName'}) }}';
            url = url.replace('companyName', $comanyname);
            $.ajax({
                async: true,
                type: "GET",
                url: url,
                success: function (json) {
                    console.log(JSON.stringify(json));
                    if (json.success == true) {
                        // declancher une exeption
                        window.Parsley.addValidator('company', {
                            validate: function (value) {
                                return value;
                            }
                        }).addMessage('en', 'This company name already exists');
                    }
                }
            });
        });
    </script>
这不适用于第一次更改。在第二次更改中,我在consile发现了以下警告消息:

main_Mask_parsley.min_1.js:16验证程序公司已经定义


我必须怎么做?

您的代码显示了一些困惑:

你不应该自己触发验证,而应该告诉欧芹怎么做。 在初始化时注册自定义验证器一次。 无需自己进行ajax调用,使用远程验证器。
祝你好运

这段代码在每个ajax请求中都添加了“company”的验证器-应该在请求发生之前只添加一次