как сохранить все значения в базе данных на основе флажков, проверенных с помощью jquery, используя asp.net mvc - PullRequest
0 голосов
/ 14 января 2019

У меня есть таблица базы данных, в которой у меня есть столбец с именем Status, который представляет собой статус комнаты. Я использовал его в качестве помеченного Enum со значением «Очистка и проверка инвентаризации», я использую условие if, чтобы сопоставить значение столбца Status в таблице с Перечисление, если оно совпадает, показывает этот флажок, если значение статуса в таблице равно 4, а в Перечислении это 4, то соответствующая комната требует очистки, если оно равно 3, тогда требуется проверка инвентаря и т. д.

При нажатии кнопки «Сохранить» я хочу получить значение флажков с соответствующим значением RoomId, которое запрашивало очистку и инвентаризацию, а затем передать нулевое значение в столбец «Состояние» с этим соответствующим значением RoomId. должно быть нулевым, никаких действий не требуется для комнаты

Я хочу использовать метод jquery post для этого

                        @if (item.Status == EnumHkStatus.Cleaning)
                        {
                            <input type="checkbox" data-cid="@item.RoomId" class="form-check-input cstatus" />
                            <label>Cleaning</label>
                            <br />
                        }

                        @if (item.Status == EnumHkStatus.InventoryCheck)
                        {
                            <input type="checkbox" data-invid="@item.RoomId" class="form-check-input cstatus" />
                            <label>Inventory Check</label>
                        }

                        <button type="button" class="btn btn-default insert" data-rid="@item.RoomId">Save</button>

                        $(function () {
    $('.insert').click(function () {
        if ($('cstatus').is(':checked')) {
            var cleaningStatus = $('input[type=checkbox]').val();
        }
        $.post("@Url.Action("SetCleaningStatus", "HouseKeeping")", { id: $(this).data("id"), status: cleaningStatus });
});

Метод действия контроллера

    public ActionResult SetCleaningStatus(int id, int status)
    {
        var RoomSt = db.SingleOrDefault<Room>(id);
        if(ModelState.IsValid)
        {
            RoomSt.Status = null;
            db.Update(RoomSt);
        }
        return View("Index");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...