Mam kilka formularzy na stronie internetowej i niewidzialnego Google reCAPTCHA. Od czasu do czasu coś idzie nie tak i wyświetlany jest alert: "Nie można skontaktować się z reCAPTCHA. Sprawdź połączenie i spróbuj ponownie.". Próbowałem ukryć te wiadomości, zastępując funkcję alertu:Jak zatrzymać wyświetlanie alertów przez Google reCAPTCHA?
<script>
var _alert = window.alert;
window.alert = function(text) {
if(text.indexOf("reCAPTCHA") === -1){
_alert(text);
}
return true;
};
</script>
Jednak to nie działa. Alerty są nadal wyświetlane. To jest kod, którego używam do wywoływania reCAPTCHA. Używam prawdziwego klucza witryny zamiast MY_SITE_KEY:
<script>
var widgetNewsletter;
var widgetRegistration;
var captchaCallback = function() {
widgetNewsletter = grecaptcha.render('subscriptionSubmit', {
'sitekey' : 'MY_SITE_KEY',
'callback' : function() {
document.getElementById("newsletter-validate-detail").submit();
}
});
if(document.getElementById("registerFormSubmit") !== null) {
widgetRegistration = grecaptcha.render('registerFormSubmit', {
'sitekey' : 'MY_SITE_KEY',
'callback' : function() {
document.getElementById("form-validate").submit();
}
});
}
};
</script>
<script src='https://www.google.com/recaptcha/api.js?onload=captchaCallback&render=explicit' async="false" defer></script>
Jak mogę zatrzymać wyświetlanie alertów?
Zostało już odpowiedział: https://stackoverflow.com/questions/48003527/cannot-contact-recaptcha-check-your-connection-and-try-again –
link w poprzednim komentarzu nie jest odpowiedzią na to pytanie. To dotyczy zatrzymania błędu. To pytanie dotyczy zatrzymywania błędów pojawiających się jako Alert() * fuj! *. – jwinn