如何在选中/取消选中复选框时立即发布

时间:2013-11-19 17:25:33

标签: asp.net-mvc-4

我有一个页面上显示的ToDoItem列表:

@model ToDo4.ViewModels.IndexViewModel  
@foreach (var item in Model.Items)  
{  
    <tr>  
        <td> @Html.DisplayFor(modelItem => item.Content) </td>  
        <td> @Html.DisplayFor(modelItem => item.Status) </td>  
    </tr>  
}  

IndexViewModel包含:
List<ToDoItem> Items

我想在选中或取消选中复选框后立即更改显示的内容(在ToDoItem.Status上过滤)。
1)如何处理已检查/未检查的事件并返回控制器?
2)我怀疑我应该将列表放在局部视图中;无论处理已检查/未检查的事件,只刷新部分视图 任何见解都表示赞赏......

1 个答案:

答案 0 :(得分:0)

使用jquery ajax调用回控制器来更改数据库中的记录。像这样的东西

$.ajax({
    url: "@Url.Action("Action", "Controller")",
    type: "POST",
    cache: false,
    async: true,
    data: {
        id: 'clicked id'
    },
    contentType: 'application/json',
    dataType: 'json',
    success: function(result){
        var tr = //clicked row
        tr.remove();
    }
});

Getting the id of a table row when a checkbox is checked 这有关于如何获取被点击的行的id的代码,您应该能够使用tr.remove使用相同的行。 tr.remove将删除表格中的表格行。你提到需要更改列表,但希望删除将完成你需要的。