Как передать два значения из указанной строки c в контроллер asp. net core mvc? - PullRequest
0 голосов
/ 07 февраля 2020

Моя цель - когда я нажимаю зеленую галочку, она обновляет поле с 1 до 0, которое вернется и сделает зеленую галочку красным x. Вот изображение моей таблицы для справки.

My Alerts.cs html код:

 @for (int i = 0; i < Model.Count; i++)
                                    {

                                        <tr>
                                            <td>
                                                @Model[i].AppName
                                            </td>
                                            <td>
                                                @Model[i].MonAlertsID
                                            </td>
                                            <td>
                                                @Model[i].AlertType
                                            </td>


                                            <td>
                                                @Model[i].DisplayName
                                            </td>
                                            <td>

                                                <form class="form-inline ml-auto" asp-action="Alerts2" method="POST">
                                                    @if(@Model[i].Active == "1")
                                                    {

                                                    <button type="submit" name="changetoinactive"  asp-action="Alerts2" formmethod="POST" class="btn btn-success btn-raised btn-fab btn-fab-mini btn-round">

                                                        <i class="material-icons">done</i>
                                                    </button>
                                                    }
                                                    @if (@Model[i].Active == "0")
                                                    {
                                                        <button type="submit" name="notactive" id="notactive" class="btn btn-danger btn-raised btn-fab btn-fab-mini btn-round">
                                                            <i class="material-icons">clear</i>
                                                        </button>
                                                    }
                                                </form>
                                            </td>
                                        </tr>


                                    }

мой контроллер:

public string Alerts2()
{         
}

Как получить значения AppName и MonAlertsID для контроллера из формы на моей странице cs html?

1 Ответ

0 голосов
/ 10 февраля 2020

Вы можете использовать hidden тип ввода для отправки AppName и MonAlertsID в контроллер. Имена параметров действий должны соответствовать именам скрытых входов.

Alerts.cshml:

<td>
    <form class="form-inline ml-auto" asp-action="Alerts2" method="POST">
        <input type="hidden" name="appName" value="@Model[i].AppName" />
        <input type="hidden" name="monAlertsID" value="@Model[i].MonAlertsID" />
        @if (@Model[i].Active == "1")
        {

            <button type="submit" name="changetoinactive" class="btn btn-success btn-raised btn-fab btn-fab-mini btn-round">

                <i class="material-icons">done</i>
            </button>
        }
        @if (@Model[i].Active == "0")
        {
            <button type="submit" name="notactive" id="notactive" class="btn btn-danger btn-raised btn-fab btn-fab-mini btn-round">
                <i class="material-icons">clear</i>
            </button>
        }
    </form>

</td>

Действие

[HttpPost]
public IActionResult Alerts2(string appName, int monAlertsID)
{
    //save changes to database
    //...
    return RedirectToAction("Alerts");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...