[英]Cannot refresh Kendo Grid by a custom button?
我嘗試過在stackoverflow和其他頁面上建議的許多不同的方法,但仍然無法刷新Kendo Grid上的數據。 我在應用以下方法時遇到“TypeError:$(...)。data(...)is undefined”錯誤。 有任何幫助嗎?
<div id="grid"></div>
<button id="refresh" class="k-button" onclick="Refresh()">Refresh</button>
<script>
var grid = $("#grid").kendoGrid({
//code omitted for brevity
dataSource: {
type: "json",
transport: {
read: {
url: "/Event/Event_Read",
dataType: "json",
cache: false
}
},
schema: {
model: {
fields: {
CardNo: { type: 'number' }
//code omitted for brevity
}
}
}
},
pageable: {
pageSize: 15,
refresh: true
},
filterable: true,
columns:
[
{ field: "CardNo", title: "Card No", filterable: true }
//code omitted for brevity
]
}).data("kendoGrid");
function Refresh() {
$("#grid").data("kendoGrid").dataSource.read();
$("#grid").data("kendoGrid").refresh();
}
</script>
嗨,請嘗試此代碼,包括以下css和js,並嘗試重新加載網格。
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" href="styles/kendo.common.min.css" />
<link rel="stylesheet" href="styles/kendo.default.min.css" />
<script src="js/jquery.min.js"></script>
<script src="js/kendo.all.min.js"></script>
</head>
<body>
<div id="grid"></div>
<button id="refresh" class="k-button" onclick="Refresh()">Refresh</button>
<script type="text/javascript">
$(function () {
var grid = $("#grid").kendoGrid({
//code omitted for brevity
dataSource: {
type: "json",
transport: {
read: {
url: "/Event/Event_Read",
dataType: "json",
cache: false
}
},
schema: {
model: {
fields: {
CardNo: { type: 'number' }
//code omitted for brevity
}
}
}
},
pageable: {
pageSize: 15,
refresh: true
},
filterable: true,
columns:
[
{ field: "CardNo", title: "Card No", filterable: true }
//code omitted for brevity
]
}).data("kendoGrid");
function Refresh() {
$("#grid").data("kendoGrid").dataSource.read();
$("#grid").data("kendoGrid").refresh();
}
});
</script>
為我工作並參考這個 telerik網站。
這應刷新網格:
$("#grid").data("kendoGrid").dataSource.read();
刷新方法再次從數據源填充網格。 如果數據沒有改變,網格也不會改變。
如果你得到了firebug錯誤
TypeError:$(...)。data(...)未定義
這意味着在調用此代碼或選擇器錯誤時,網格尚未初始化。 確保不要將網格名稱與其他控件混淆
嘗試更改您的選擇器名稱。
$("#MyGrid").data("kendoGrid").dataSource.read();
請試試這個
$(".k-pager-refresh").trigger('click');
在你的刷新功能
或試試這個
$("#grid").data("kendoGrid").dataSource.read();
$("#grid").data("kendoGrid").refresh();
這有助於你
問候,
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.