Я установил две кнопки, которые при нажатии просто отправляют свои значения на мой контроллер, затем я пытаюсь отправить обратно AJAX HTML, чтобы отобразить профиль пользователя на главной странице. Я не могу получить ввод id
, чтобы сделать это на контроллере, независимо от того, что я пытаюсь.
Вот HTML:
<ul class="signup-li">
@foreach($participants as $participant)
<button type="submit" name="id" value="{{$participant->id}}">
{{$participant->phone}}
</button>
@endforeach
</ul>
Вот мой JS:
$(document).ready(function(){
$("button").click(function() {
var id = $(this).val();
console.log(id);
$.ajax({
type:'POST',
url:'/get-profile/',
headers: {'X-CSRF-TOKEN': '{{ csrf_token() }}' },
data: { "id" : id },
success: function(data){
console.log('hi');
},
error: function(xhr,textStatus,thrownError) {
alert(xhr + "\n" + textStatus + "\n" + thrownError);
}
});
});
});
Вот моя функция контроллера:
public function getProfile(Request $request)
{
$id = $request->input('id');
Log::info($id);
$participant = Participant::where('id','=',$id)->first();
$returnHTML = view('ajax.user-profile')->with('participant', $participant)->renderSections()['content'];
return response()->json(array('success' => true, 'html'=>$returnHTML));
}
Что я делаю не так? Я пытаюсь зарегистрировать запрос и ничего не приходит. У меня отключен CSRF для этого маршрута. Проблема в том, что участник не найден, потому что идентификатор не попадает в контроллер. Почему он не делает это?