Иногда требуется капча, которую можно бы было обновить динамически, без перезагрузки страницы. Задача очень простая, довольно часто встречающаяся, но ее решения нет в стандартных компонентах битрикса.
Первым шагом мы копируем шаблон в свое пространство имен как обычно, затем редактируем место, где выводится капча таким образом:
в стилях нужно прописать
размеры whiteBlock такие же как у капчи. Смысл в том, чтобы whiteBlock был полностью поверх картинки с капчей, а внутри этого белого блока отцентрированно находилась картинка, показывающая процесс подгрузки данных. Получить такую картинку можно тут.
Ссылка reloadCaptcha — есть ссылка, по клику которой будет обновляться капча. В лэнг-файле я прописал $MESS ['RELOAD_CAPTCHA'] = 'Поменять картинку'
В файле шаблона с формой добавить:
Предварительно библиотека jquery должна быть подключена. В папке шаблона компонента, там где лежит файл template.php, создать файл reload_captcha.php со следующим содержанием: