xam*_*mir 5 javascript c# jquery gridview asp.net-mvc-5
我正在使用WebGrid在客户端显示数据canSort: true.
的视图的代码是:
@model UI.Models.TestModel
@if (Model.listTestModel != null)
{
var grid = new WebGrid(Model.listTestModel,
null,
defaultSort: "ColumnA",
rowsPerPage: 25,
canPage: true,
canSort: true
);
@grid.GetHtml(
mode: WebGridPagerModes.All,
columns: grid.Columns
(
grid.Column(columnName: "ColumnA", header: "ColumnA"),
grid.Column(columnName: "ColumnB", header: "ColumnB")
)
)
}
Run Code Online (Sandbox Code Playgroud)
我可以通过单击列标题对数据进行排序.
问题:
如何使用Ajax异步对WebGrid进行排序?
感谢杰米·邓斯坦指出了这一点。
需要确保整个代码位于具有唯一 id 的
WebGriddiv 内。此外,在启用 Javascript 时引用 jQuery。
<div id='unique id goes here'>
@model UI.Models.TestModel
@if (Model.listTestModel != null)
{
var grid = new WebGrid(Model.listTestModel,
null,
defaultSort: "ColumnA",
rowsPerPage: 25,
canPage: true,
canSort: true,
ajaxUpdateContainerId: "unique id goes here"
);
@grid.GetHtml(
mode: WebGridPagerModes.All,
columns: grid.Columns
(
grid.Column(columnName: "ColumnA", header: "ColumnA"),
grid.Column(columnName: "ColumnB", header: "ColumnB")
)
)
}
<div>
<script>
$(document).ready(function () {
function updateGrid(e) {
e.preventDefault();
var url = $(this).attr('href');
var grid = $(this).parents('.ajaxGrid');
var id = grid.attr('id');
grid.load(url + ' #' + id);
};
$('.ajaxGrid table thead tr a').on('click', updateGrid);
$('.ajaxGrid table tfoot tr a').on('click', updateGrid);
});
</script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1078 次 |
| 最近记录: |