0

kendo2 つのボタンでグリッドを使用することに関連する 1 つの問題に直面しています。最初のボタンをクリックすると 3 つの列が表示され、2 番目のボタンをクリックすると 2 つの列のみが表示されます。しかし、それは機能していないようです.私の現在の例は次のとおりです:

参照リンク

<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>
4

1 に答える 1

0

単純なエラーが発生しました

どちらの場合も、dataModel1 を使用しているため、gridOptions2 には「dataModel2」を使用する必要があります。

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" }

                   ]
        })
    };

ただし、次のように、「列」は 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" }

                   ]
    };

ここで働いています:

http://plnkr.co/edit/qQ2IzHSyGM7SsZxE3BEI?p=preview

于 2014-12-06T13:09:16.527 に答える