我有一个大约20列的数据表。我有一个序列号列,它由完全数值组成,在数据库中定义为int。我花了很多时间试图弄清楚为什么这不起作用但仍然没有线索。我尝试使用sType ='numeric',type ='num',num-html,num-fmt ..似乎没什么用。我要么按以下方式排序:
1
1
10
100
或根本不排序。我检查了我的数据,它没有null或任何非数字值。数据库具有完全整数值,我完全难以理解为什么突然这不起作用。请帮忙。这是我的代码。
<table id="myTable">
<thead>
<tr>
<th>Col1</th>
<th>Col2</th>
<th>Col3</th>
<th>Col4</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td title="Del">
Data1
</td>
<td>
<div>
<div class="dropdown-menu" aria-labelledby="dropdownMenuLink">
@Html.ActionLink("Edit", "Edit", new { id = item.Id })
@Html.ActionLink("Details", "Details")
@Html.ActionLink("Delete", "Delete")
</div>
</div>
</td>
<td>
Data2
</td>
<td>
@Html.DisplayFor(modelItem => item.Serial)
</td>
</tr>
}
</table>
以下内容来自我的Layout.cshtml:
var table = $('#myTable').DataTable({
"lengthMenu": [[100, 200, 300, 500, -1], [100, 200, 300, 500, "All"]],
fixedHeader: true,
// "bFilter": false, to turn off search
fixedColumns: {
heightMatch: 'none'
},
colReorder: true,
stateSave: true,
"aoColumnDefs": [
{ "sType": "numeric", "aTargets": [3] },
{ "bSortable": false, "aTargets": [0] },
{ "bSearchable": false, "aTargets": [0] }
]
});
答案 0 :(得分:0)
您似乎正在使用jquery数据表库。根据文档,您可以在表的初始化时提供默认的排序列信息:
https://datatables.net/examples/basic_init/table_sorting.html
afterContentOffset.y
编辑:javascript库中使用的其他功能或属性可能会破坏排序。通常,在对这些类型的问题进行故障排除时,我建议删除所有属性,但您使用的属性除外(订单)。然后,您可以重新添加属性以查看是否有任何功能中断。
所以在你的代码中:
0
此外,不确定该不间断的空间是否会影响html中序列ID的值。我会删除它并尝试通过td元素上的css实现间距:
0