【发布时间】:2017-12-08 04:57:58
【问题描述】:
在我们的页面上,当用户单击链接时,会打开一个简单的模式弹出窗口。在此弹出窗口中,Kendo UI 网格显示了一个记录表。通过 ajax 调用检索数据。由于弹出窗口的空间很小,我们希望在一个页面中只显示 5 条记录,并且用户可以使用 Kendo 网格的分页功能来查看更多记录。我们还想在客户端实现分页,并在一次 ajax 调用中获取所有记录。
一切正常,除了 Kendo UI Grid 显示一页有 5 条记录,即使通过 ajax 调用检索到超过 5 条记录。
源码如下:
showReportPopup: function (dataId) {
if (dataId.length > 0) {
$.ajax({
url: AppGlobal.rootPath() + "Report/Get?id=" + dataId,
type: "GET",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: "",
success: function (data) {
if (data.length === 0) {
} else {
// Load data into DOM & Kendo UI Grid
loadDataIntoReportPopup(data);
// Show simple modal popup
$("#report-summary-modal").modal({
maxWidth: 880,
maxHeight: AppGlobal.maxModalHeight(),
minWidth: 880,
minHeight: 250,
onShow: function (dialog) {
$("html,body").css("overflow", "hidden");
},
onClose: function (dialog) {
$("html,body").css("overflow", "auto");
$.modal.close();
},
overlayClose: false
});
}
},
complete: function() {
}
});
}
},
loadDataIntoReportPopup: function (reportData) {
// Populate various fields
// Load the kendo ui grid section
$("#viewWorksGrid").kendoGrid({
dataSource:
{
data: reportData,
schema: {
data: "works"
},
pageSize: 5,
serverPaging: false
},
pageable: true,
scrollable: true,
sortable: false,
resizable: true,
columnMenu: false,
noRecords: {
template: "No results available."
},
columns: [
{
field: "title",
title: "Title"
},
{
field: "composers",
title: "Composers"
},
{
field: "performances",
title: "Performances",
attributes: { style: "text-align:right;" },
width: 50
},
{
field: "duration",
title: "Duration",
attributes: { style: "text-align:right;" },
width: 50
}
]
}).data("kendoGrid");
},
【问题讨论】:
-
你能在
dojo分享一个演示吗? -
如果网格不在模态中,相同的代码是否有效?你用的是哪个模态插件?
标签: jquery kendo-ui kendo-grid kendo-asp.net-mvc