У меня есть функция поиска, и функция поиска дает клиенту ответ json, где я отображаю имена пользователей.Но я хочу добавить ссылку, чтобы мы могли перейти к конкретному пользователю, но вы генерируете данные из ответа json ajax в laravel, чтобы можно было обращаться к ним в блейде с помощью {{route('route.name',["id" => $id])}}
вместо того, чтобы делать это с помощью jquery или javascript?потому что я генерирую href из javascript, так что есть ли возможность, как вы можете сгенерировать маршрутную ссылку, как это до сих пор?"<span class=\"border-bottom border-dark\"> <a href=\"insert link\" style=\"width:25vw;font-size: 1em;\">" + response.message[i].name + "</a></span><br>";
в том месте, где он вставляет ссылку, желаемая цель будет там, где он генерирует ссылку, подобную этой http://127.0.0.1:8000/user/profile/founduser/1
возможно ли это в любом случае или это невозможно сделать с помощью json Response?
Полныйjs:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$('#search_user_form_profile').on('keyup',function(){
$value=$(this).val();
$.ajax({
method: 'POST',
url: '{{route('user.profile.search')}}',
data: {
'data' : $value
},
success: function(response){
console.log(response);
var html = '';
for(let i = 0; i < response.message.length; i++)
{
let tempHtml = "<span class=\"border-bottom border-dark\"> <a href=\"\" style=\"width:25vw;font-size: 1em;\">" + response.message[i].name + "</a></span><br>";
html = html + tempHtml;
}
console.log(html);
$( "div.demo-container" )
.html(html);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(jqXHR, textStatus, errorThrown);
}
});
})
Контроллер, отправляющий ответ:
if(request()->ajax()){
$input = Input::get('data');
$user = User::where('name', 'LIKE', '%' . $input . '%')
->where('id', '!=', auth()->user()->id)
->get();
return response()->json(['status' => 'success', 'message' => $user]);
} else {
return response()->json(['status' => 'fail', 'message' => 'an error occurred']);
}
Редактировать:
Я пробовал это до сих пор дополнительно в ссылке вставки \"{{URL::to('/chat/find/user') }}/" + response.message[i].id + " \"
чтосгенерируйте эту ссылку http://127.0.0.1:8000/chat/find/user/2
, и я настроил и направил URL-адрес Route::get('/chat/find/user/{user}', 'ChatController@FindUser')->name('chat.find.user');
, но когда я нажимаю на ссылку, он дает страницу 404