Cześć wszystkim.
Mam problem z przekazaniem parametru poprzez link do kotrolera. Widok, w którym mam problem ma za zadanie dynamicznie wyświetlić listę użytkowników, wraz z możliwością ich wyszukiwania. Tą część zrealizowałem w js i działa dobrze. W tej funkcjonalności w js generuję linku do przycisków, aby później po przyciśnięciu przycisku można było zapisać wybór w bazie danych. Każdy link ma przypisany identyfikator użytkownika i identyfikator grupy użytkoników. Mój problem polega na tym, że po przyciśnięciu przycisku nic się nie dzieje.
Poniższy kod reprezentuje powyżej opisaną funkcjonalność. Będę bardzo wdzięczny za pomoc.
@if(ViewData[Enums.States.UserSelectWindow.ToString()].ToString() == "True")
{
<script type="text/javascript">
$("#UserlistCollectionId").css('height', $("#WindowUserSelectId").height() + 'px');
let users = @Html.Raw(Json.Serialize(UserModel.GetUsers()));
function Clear() {
$("#UserlistCollectionId").empty();
}
function FillAll(users) {
Clear();
for (user of users) {
$("#UserlistCollectionId").append('<li class="list-group-item"><div class="row justify-content-between"><div class="col-auto">' + user.name + '</div><div class="col-auto"><a class="btn btn-sm btn-success" asp-action="AddUserToGroup" asp-controller="Settings" asp-route-groupId=@Model.Group.Id asp-route-userId='+user.id+'>Wybierz</a></div></div></li>');
}
}
FillAll(users);
$("#SearchInputId").keyup(function () {
Clear();
let searchValue = $("#SearchInputId").val();
if (searchValue === "")
FillAll(users);
else {
for (user of users) {
if (user.name.includes(searchValue)) {
$("#UserlistCollectionId").append('<li class="list-group-item"><div class="row justify-content-between"><div class="col-auto">' + user.name + '</div><div class="col-auto"><a class="btn btn-sm btn-success" asp-route-groupId=@Model.Group.Id asp-route-userId='+user.id+'>Wybierz</a></div></div></li>');
}
}
}
});
</script>
}
'+user.id+'
asp-action
,asp-controller
? Powinno wygenerować na tej podstawie odpowiedniehref
w kodzie wynikowym