Javascript 在ASP.NET MVC中使用jQuery数据表时如何更新模型数据
我有大量从JSON返回的数据,我使用 这是完美的工作排序,搜索和分页 但当我试图用视图控件绑定模型时,我遇到了一个问题 例如,我返回了以下JSONJavascript 在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"},
{
"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”是的,我有一个表单,没有选择任何东西,我希望模型在我选择或取消选择一个项目时设置为真或假。为它创建了一个单独的帖子,