У меня есть HTML-таблица, в которой перечислены истории комментариев для части.Мне бы хотелось, чтобы в столбце «Комментарий» была ссылка «Просмотреть здесь», при нажатии на которую открывается модальное окно для отображения комментария к выбранной записи.Итак, вместо вашего стандарта:
<td>
@Html.DisplayFor(modelItem => item.Comment)
</td>
Я хочу что-то вроде этого:
<a data-toggle="modal" data-target="#SeeMoreModal">View Here</a>
@* "See More" comment modal *@
<div class="modal fade" id="SeeMoreModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
@Html.DisplayFor(modelItem => item.Comment)
</div>
</div>
</div>
</div>
Вот полное тело таблицы:
@foreach (var item in Model.CmtPartComments)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.System.Description)
</td>
<td>
@Html.DisplayFor(modelItem => item.EnterBy)
</td>
<td>
@Html.DisplayFor(modelItem => item.EnterDt)
</td>
<td>
<a data-toggle="modal" data-target="#SeeMoreModal">View Here</a>
@* "See More" comment modal *@
<div class="modal fade" id="SeeMoreModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
@Html.DisplayFor(modelItem => item.Comment)
</div>
</div>
</div>
</div>
</td>
</tr>
}
Проблема в следующем:Мой метод onget для этой страницы устанавливает идентификатор комментария специально для самого последнего комментария к этой части (причина в том, что я также использую эту страницу для отображения самого последнего комментария в поле ввода, которое пользователи могут обновлять).Из-за этого, когда вы нажимаете «Просмотреть больше», он всегда показывает комментарий этого идентификатора, а не тот, который вы на самом деле выбираете.
То, что я пробовал: я предположил, что это означало, что мне нужно было передать идентификатор и получитьдругой метод onget, который запускается каждый раз, когда вы нажимаете «View More», чтобы установить идентификатор комментария для выбранного.Я попробовал это, и ничего не меняется.Я предполагаю, что это потому, что вы ничего не можете передать или запустить метод, просто открыв модальное?(Я также попытался использовать «data-id =» @ item.Id »).
<a asp-route-id="@item.Id" asp-page-handler="comment" data-toggle="modal" data-target="#SeeMoreModal">View Here</a>
public async Task OnGetCommentAsync(int? id)
{
CmtPartComment = await _context.CmtPartComments.FirstOrDefaultAsync(m => m.Id == id);
}
В итоге ... используя модал, как вы можете заставить его распознавать Id, выбранный изтаблицу и просмотреть данные взамен?