Javascript 在ASP.NET MVC中使用jQuery数据表时如何更新模型数据

Javascript 在ASP.NET MVC中使用jQuery数据表时如何更新模型数据,javascript,jquery,json,asp.net-mvc,datatables,Javascript,Jquery,Json,Asp.net Mvc,Datatables,我有大量从JSON返回的数据,我使用 这是完美的工作排序,搜索和分页 但当我试图用视图控件绑定模型时,我遇到了一个问题 例如,我返回了以下JSON { "data": [ {"IsSelected":true,"Name":"SMyDataPoint__01"}, {"IsSelected":true,"Name":"SMyDataPoint__04"}, {"IsSelected":true,"Name":"SMyDataPoint__07"},

我有大量从JSON返回的数据,我使用

这是完美的工作排序,搜索和分页

但当我试图用视图控件绑定模型时,我遇到了一个问题

例如,我返回了以下JSON

{
    "data":
    [
    {"IsSelected":true,"Name":"SMyDataPoint__01"},
    {"IsSelected":true,"Name":"SMyDataPoint__04"},
    {"IsSelected":true,"Name":"SMyDataPoint__07"},
    {"IsSelected":true,"Name":"SMyDataPoint__08"},
    {"IsSelected":true,"Name":"SMyDataPoint__09"},
    {"IsSelected":true,"Name":"SMyDataPoint__10"},
    {"IsSelected":true,"Name":"SMyDataPoint__11"}
    ]
}
现在我使用jQuery在浏览器中填充json数据

$('#myTableName').DataTable(
        {
            "ajax": {
                "url": "/API/Loaddata",
                "type": "GET",
                "datatype": "json"
            },
            "columns": [
                {
                    "data": "IsSelected",
                    "render": function (data, type, row) {
                        if (type === 'display') {
                            return '<input type="checkbox" class="editor-active">';
                        }
                        return data;
                    },
                    "className": "dt-body-center"
                   // "autoWidth": true
                },
                { "data": "Name", "autoWidth": true }
            ],
            "rowCallback": function (row, data) {
                // Set the checked state of the checkbox in the table
                $('input.editor-active', row).prop('checked', data.active == 1);
            }
        }
    );
$('#myTableName')。数据表(
{
“ajax”:{
“url”:“/API/Loaddata”,
“类型”:“获取”,
“数据类型”:“json”
},
“栏目”:[
{
“数据”:“IsSelected”,
“渲染”:函数(数据、类型、行){
如果(类型==‘显示’){
返回“”;
}
返回数据;
},
“类名称”:“dt主体中心”
//“自动宽度”:真
},
{“数据”:“名称”,“自动宽度”:true}
],
“rowCallback”:函数(行、数据){
//设置表中复选框的选中状态
$('input.editor active',row.prop('checked',data.active==1);
}
}
);

虽然我从JSON中被选为true,但在UI中,它们没有被勾选。

您显示的JSON对象没有名为
活动的属性(因此
数据。活动的
将返回
未定义的
)。使用
IsSelected
设置
checked
属性

$('#myTableName').DataTable({
   ....
   "rowCallback": function (row, data) {
        // Set the checked state of the checkbox in the table
       $('input.editor-active', row).prop('checked', data.IsSelected);
    }
})

data.active
返回什么?@StephenMuecke,这就是问题所在,我应该完成data.IsSelected。如果你能发布答案,我会将其标记为解决方案。我在学习一个教程,很多人可能会犯同样的错误。使用jQuery Datatable进行双向投标可行吗?现在,我取消选中了几个复选框,并希望通过使用返回数据来获取它们。其中(x=>x.IsSelected==false),实际上不返回任何内容。您有正在提交的表单吗?那代码在POST方法中吗?您的复选框没有名称属性,因此不要回发值(它们也没有值),因此即使它们具有
名称
属性,它们也只会提交“on”是的,我有一个表单,没有选择任何东西,我希望模型在我选择或取消选择一个项目时设置为真或假。为它创建了一个单独的帖子,