На нашем сайте используется тема WordPress divi, и у нас есть контактная форма, которая использует jquery validation
custom.js
jQuery(document).ready(function() {
var contactForm = jQuery("#contact_form");
contactForm.validate({
rules: {
full_name: {required:true, maxlength:100},
email: {required:true, validateEmail: true},
phone_number: {required:true}
},
submitHandler: function(form evt) {
evt.preventDefault();
var fullName = jQuery('#full_name').val();
var email = jQuery('#email').val();
var phoneNumber = jQuery('#phone_number').val();
var contactFormUrl = contactForm.attr('action');
jQuery.ajax({
type: "POST",
url: contactFormUrl,
cache: false,
data: {
fullname: fullName,
email: email,
phonenumber: phoneNumber
}
}).done(function(data, textStatus, jqXHR) {
console.log("Success");
}).fail(function(jqXHR, textStatus, errorThrown) {
console.log("Fail")
});
}
});
});
Мы минимизируем наш custom.js
в custom.min.js
. Когда я смотрю наш сайт на консоли, это то, что я вижу:
Uncaught TypeError: e.validate is not a function
at HTMLDocument.<anonymous> (custom.min.js?ver=1:1)
at i (jquery.js?ver=1.12.4:2)
at Object.fireWith [as resolveWith] (jquery.js?ver=1.12.4:2)
at Function.ready (jquery.js?ver=1.12.4:2)
at HTMLDocument.K (jquery.js?ver=1.12.4:2)
Порядок скриптов, загружаемых в DOM:
<script type='text/javascript' src='/wp-includes/js/jquery/jquery.js?ver=1.12.4'></script>
<script type='text/javascript' async='async' src='/divi-child/scripts/jquery.validate.min.js?ver=1'></script>
<script type='text/javascript' defer='defer' src='/divi-child/scripts/v3/custom.min.js?ver=1'></script>
Знаете, как можно это решить? Любая помощь очень ценится. Спасибо