Не получается подгрузить капчу через AJAX только этот метод мне нужен.
есть кнопка
<button type="button" class="btn btn-default btn-block" onclick="test_capcha()"> Капча</button>
при нажатии на неё происходит вызов функции
function test_capcha(){
$.ajax({
url: '/form_register_giv',
method:'POST',
data:{
captcha:'captcha'
},
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
success: function(data){
document.querySelector('.right-color .tery').innerHTML = data;
}
})}
роут в view
Route::controller(AjaxController::class)->group(function(){
Route::post('/form_register_giv','ajax_form_register');
});
логика в контролере
function ajax_form_register(Request $request){
if($request->ajax()) {
if($request->captcha == 'captcha') {
return view('ajax.form_register',[
'capcha' => NoCaptcha::display()
])->render();
}
}
}
и сам файлик
form_register.blade.php
{!!$capcha!!}
в итоге приходит такая строка
<div data-sitekey="###########" class="g-recaptcha"></div>
если что скрипт подключен, для отображении капчи
{!! NoCaptcha::renderJs() !!}
она не как не подключается к скрипту и не как не отображается эта CAPTCHA.
Другими методами получается всё работает, а именно если вот эту строку помещать на страницу сразу без подгрузки ajax то всё работает. Но мне нужно через ajax.
Как с помощью ajax в LARAVEL подгружать капчу?