0
私は自分のフォームを検証するために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>
これが最初の変更のために動作しません: ので、私はこれをしませんでした。 2回目の変更で私はconsilでこの警告メッセージを見つけました:
main_Mask_parsley.min_1.js:16 Validator "company"はすでに定義されています。
どうすればよいですか?
このコードは、すべてのAjaxリクエストに応じて「会社のためのバリデータを追加している - 一度だけそれを追加(そして要求が発生する前に)必要があります – hackerrdave