我面临一个与使用带有两个按钮的kendo
网格相关的问题。如果我点击第一个按钮,它应该显示三列,如果我点击第二个按钮,它应该只显示两列。但它似乎并没有起作用。我目前的例子是:
<div id="example" ng-app="KendoDemos">
<div ng-controller="MyCtrl">
<button ng-click="execute1($event)">Execute 1</button>
<button ng-click="execute2($event)">Execute 2</button>
<div kendo-grid="grid" k-options="gridOptions" k-rebind="selectedType"></div>
</div>
</div>
答案 0 :(得分:0)
你有一个简单的错误
在这两种情况下,您使用的是dataModel1,您必须使用&#34; dataModel2&#34;对于gridOptions2
var gridOptions2 = {
dataSource: new kendo.data.DataSource({
data: new kendo.data.ObservableArray(dataModel2),
columns: [
{ field: "Id", title:"ID", width: "56px" },
{ field: "company", title:"company", width: "110px" },
{ field: "os", title:"os", width: "110px" }
]
})
以下解决:
http://plnkr.co/edit/Nie7eJVoPmt6xUpnmqnF?p=preview
编辑:
现在我没有解决问题:
你有这个:
var gridOptions1 = {
dataSource: new kendo.data.DataSource({
data: new kendo.data.ObservableArray(dataModel1),
columns: [
{ field: "Id", title:"ID", width: "56px" },
{ field: "company", title:"company", width: "110px" }
]
})
};
但&#34;列&#34;应该在DataSource之外,如下所示:
var gridOptions1 = {
dataSource: new kendo.data.DataSource({
data: new kendo.data.ObservableArray(dataModel1),
}),
columns: [
{ field: "Id", title:"ID", width: "56px" },
{ field: "company", title:"company", width: "110px" }
]
};
这是有效的: