В моем приложении Rails есть форма Ajax, содержащая разметку Recaptcha, предоставленную помощником в геме Ambapia Recaptcha:
recaptcha_tags :ajax => true
При отправке форма выполняет действие create, которое отвечаетcreate.js.erb, который содержит следующее:
$('#message-form').replaceWith("<%= escape_javascript(render('message')) %>");
Часть 'message' содержит ту же разметку формы, которая была первоначально отображена, включая recaptcha_tags, но может также отображаться, если при проверке были ошибки вэта точка.
В Firefox форма перерисовывается и отображает обновленную капчу.Но по какой-то причине в браузерах Webkit (Safari и Chrome) элемент Recaptcha 'dynamic_recaptcha' очищается, как будто Recaptcha.create (public_key, element_id) никогда не вызывается.
В консоли разработчика Safari яЯ могу вызвать Recaptcha.create (public_key, element_id) и восстановить Captcha.
Может кто-нибудь сказать мне, что здесь происходит?Спасибо.