我有一个错误列表,我需要在浏览器中显示分页,但是,我不是从数据库中提取数据,我是基于许多业务逻辑构建此模型的,这个列表可能是最多1000件或更多。所有项目都需要在前端提供,滚动的许多项目对用户来说很麻烦,这就是我在这里需要分页机制的原因。
注意:我正在使用asp.net MVC框架
而且,这是我的错误模型
public class ErrorViewModel
{
public string ErrorType { get; set; }
public string ErrorMessage { get; set; }
public string AdditionalMessage { get; set; }
}
答案 0 :(得分:0)
您可以使用提供客户端搜索和分页的DataTables插件(服务器将所有数据传送到客户端,不推荐,但这是您要求的)。
首先,下载DataTables插件并将其包含在项目和布局文件中。
其次,您需要使用Razor语法呈现HTML表。
@model IEnumerable<ErrorViewModel>
<table class="data-table">
<thead>
<tr>
<th>Error type</th>
<th>Error message</th>
<th>Additional message</th>
</tr>
</thead>
<tbody>
@foreach(var item in Model)
{
<tr>
<td>@Model.ErrorType</td>
<td>@Model.ErrorMessage</td>
<td>@Model.AdditionalMessage</td>
</tr>
}
</tbody>
</table>
第三,在布局文件的末尾添加此代码(导入jQuery和DataTables插件后。)。
<script>
$(document).ready(function() {
$('.data-table').DataTable();
});
</script>
此处示例: jsbin.com
答案 1 :(得分:0)
根据Spectarion的建议,您可以使用DataTables插件。由于您使用的是ASP.net MVC,我建议使用DataTables.ASPNet,它为jQuery DataTables提供了很好的服务器端支持和帮助。它易于使用,只需按照文档并下载示例项目即可。