在 Kendo UI 网格中仅显示两条记录
Display only two records in Kendo UI Grid
我在这里有一个要求,在页面加载时只显示两条记录,当用户点击显示所有按钮时,应该显示其余记录。
我目前正在做的是,在加载时仅将两条记录绑定到网格,当单击“显示所有”按钮时,破坏网格并使用所有记录再次创建它。
使用这种方法,当我显示记录数时,用户会感到困惑,因为最初总记录数仅为 2,当单击“显示全部”时,它会根据记录数发生变化。
为了避免这种情况,我想首先绑定所有记录,并通过某种 kendo 设置只显示两条记录。
这可能吗?
我也在使用 angularjs 并将 angular $scope 对象作为数据源分配给网格。
请尝试使用以下代码片段。
<!DOCTYPE html>
<html>
<head>
<base href="http://demos.telerik.com/kendo-ui/treelist/local-data-binding">
<title>Jayesh Goyani</title>
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2015.2.902/styles/kendo.common-bootstrap.min.css" />
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2015.2.902/styles/kendo.bootstrap.min.css" />
<script src="//kendo.cdn.telerik.com/2015.2.902/js/jquery.min.js"></script>
<script src="//kendo.cdn.telerik.com/2015.2.902/js/kendo.all.min.js"></script>
</head>
<body>
<button value="show all" onclick="ShowAll()">Show All</button>
<div id="grid"></div>
<script>
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource: {
type: "odata",
transport: {
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Customers"
}
},
height: 550,
groupable: true,
dataBound: onDataBinding,
sortable: true,
columns: [{
field: "ContactTitle",
title: "Contact Title"
}, {
field: "CompanyName",
title: "Company Name"
}, {
field: "Country",
width: 150
}]
});
});
function onDataBinding(arg) {
var grid = $("#grid").data("kendoGrid");
$(grid.tbody).find("tr").hide();
$(grid.tbody).find("tr:eq(0)").show();
$(grid.tbody).find("tr:eq(1)").show();
}
function ShowAll() {
var grid = $("#grid").data("kendoGrid");
$(grid.tbody).find("tr").show();
}
</script>
</body>
</html>
如有任何疑问,请告诉我。
我在这里有一个要求,在页面加载时只显示两条记录,当用户点击显示所有按钮时,应该显示其余记录。
我目前正在做的是,在加载时仅将两条记录绑定到网格,当单击“显示所有”按钮时,破坏网格并使用所有记录再次创建它。
使用这种方法,当我显示记录数时,用户会感到困惑,因为最初总记录数仅为 2,当单击“显示全部”时,它会根据记录数发生变化。
为了避免这种情况,我想首先绑定所有记录,并通过某种 kendo 设置只显示两条记录。
这可能吗?
我也在使用 angularjs 并将 angular $scope 对象作为数据源分配给网格。
请尝试使用以下代码片段。
<!DOCTYPE html>
<html>
<head>
<base href="http://demos.telerik.com/kendo-ui/treelist/local-data-binding">
<title>Jayesh Goyani</title>
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2015.2.902/styles/kendo.common-bootstrap.min.css" />
<link rel="stylesheet" href="//kendo.cdn.telerik.com/2015.2.902/styles/kendo.bootstrap.min.css" />
<script src="//kendo.cdn.telerik.com/2015.2.902/js/jquery.min.js"></script>
<script src="//kendo.cdn.telerik.com/2015.2.902/js/kendo.all.min.js"></script>
</head>
<body>
<button value="show all" onclick="ShowAll()">Show All</button>
<div id="grid"></div>
<script>
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource: {
type: "odata",
transport: {
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Customers"
}
},
height: 550,
groupable: true,
dataBound: onDataBinding,
sortable: true,
columns: [{
field: "ContactTitle",
title: "Contact Title"
}, {
field: "CompanyName",
title: "Company Name"
}, {
field: "Country",
width: 150
}]
});
});
function onDataBinding(arg) {
var grid = $("#grid").data("kendoGrid");
$(grid.tbody).find("tr").hide();
$(grid.tbody).find("tr:eq(0)").show();
$(grid.tbody).find("tr:eq(1)").show();
}
function ShowAll() {
var grid = $("#grid").data("kendoGrid");
$(grid.tbody).find("tr").show();
}
</script>
</body>
</html>
如有任何疑问,请告诉我。