Вставьте значение переключателя в DB через Ajax - MVC - PullRequest
0 голосов
/ 31 августа 2018

У меня есть CheckBox, который работает как тумблеры, и по умолчанию он установлен Checked/ON, и когда я UnChecked/OFF CheckBox, он передаст значение (ВЫКЛ), не проблема, но когда я снова проверил флажок, он не может передать значение (ВКЛ).

Может кто-нибудь, пожалуйста, помогите мне или направьте меня в правильном направлении!
Заранее спасибо:)

Пример со снимками экрана:

По умолчанию установлено Проверено / ВКЛ

Теперь я отключен / выключен, его передать значение

Теперь я снова проверил / ВКЛ, он не может передать значение

Вид:

 <tbody>
@foreach (var rma in Model)
{
    <tr>
        <td>
         <label class="switch switch-text switch-primary switch-pill">
           <input type="checkbox" class="switch-input" checked>
           <span data-on="ON" data-off="OFF" class="switch-label"></span>
           <span data-id="@rma.Id" class="switch-handle"></span>
            </label>
        </td>
   </tr>
  }
 </tbody>

JavaScript:

<script>
$(document).ready(function () {
    $('.switch-handle').click(function () {
        var Id = $(this).data('id');
        var checkStatus = this.checked ? 'ON' : 'OFF';

        $.ajax({
            type: "POST",
            url: '@Url.Action("UpdateNtf", "Account")',
            data: {
                id: Id,
                status: checkStatus
            },
            dataType: 'json',
            success: function (result) {  
                if (result) {
                    console.log("Ok");
                } else {
                    console.log("error");
                }
            },
            error: function () {
                console.log('something went wrong - debug it!');
            }
        })
    });
});
</script>

Контроллер:

public JsonResult UpdateNtf(int? id, string status)
{
    var result = db.RMA_History.Where(a => a.Id == id).FirstOrDefault();
    if (result != null)
    {
        result.NTFOnOFF = status;
        db.SaveChanges();
    }
    return Json(result,JsonRequestBehavior.AllowGet);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...