Я работаю с CMS Thelia 2, которая работает с Symfony 2, на нескольких сайтах.И у меня есть контактная форма для каждого, который я защищаю с помощью проверки Google reCaptcha v2.Я вынужден использовать это решение, потому что reCaptcha v3 позволяет пользователю отправлять форму без заполнения необходимых вводов (до сих пор не имею понятия, почему).
Поэтому я использую проверочный, и силы Javascript вызываютпользователь должен проверить его, чтобы отправить форму.
<div class="form-group group-btn">
<br>
<div class="g-recaptcha" data-sitekey="my-site-key" align="right"></div>
<br>
<div class="control-btn text-right">
<button type="submit" id="submitBtn" class="btn btn-contact">{intl l="Send" d="citerneocontact.fo.citerneo"}</button>
</div>
</div>
Функция:
function onSubmit(token) {
document.getElementById("form-contact").submit();
}
$("form").submit(function(event) {
showloader = false;
var recaptcha = $("#g-recaptcha-response").val();
if (recaptcha === "") {
event.preventDefault();
alert("Veuillez cocher le reCaptcha");
}
});
Это работает на всех моих сайтах, кроме одного, где Gif JQuery Blue Loader запускается, еслипользователь пытается отправить форму без проверки капчи.Моя функция Javascript работает, но этот загрузчик обнаруживается и блокирует любое действие на странице (вращается навсегда, заставляя меня перезагрузить страницу).И, конечно же, это предотвращает действие формы, письмо не будет отправлено.
Вот gif Jquery_loader:
Инструмент Chrome Developper показывает мне, что отображается тот div:
<div class="loader" style="display: block;"></div>
До сих пор я пытался заставить его использовать «display: none» с CMS и / или с Javascript, но ничего не работает.
Есть идеи, чтобы этот загрузчик не появлялся и не блокировал какие-либо действия?