4

現在、動的データ グリッドをレンダリングするためにkoGridを検討していますが、カスタマイズが必要です。

たとえば、デフォルトの列メニューを使用せずに列を表示および非表示にしたいと考えています。

これは、その列メニューの HTML 出力です。

<div data-bind="visible: showColumnMenu">
    <span class="kgMenuText">Choose Columns:</span>
    <ul class="kgColList" data-bind="foreach: nonAggColumns">
        <li class="kgColListItem">...</li>
    </ul>
</div>

ご覧のとおり、 foreach バインディングはnonAggColumnsプロパティを利用しています。koGrid ライブラリを見ると、このプロパティは で定義されていwindow.kg.Gridます。koGrid のコンテキスト外からこのプロパティ (および kg.Grid の他のプロパティ) にアクセスできるようにしたいと考えています。

これを達成する方法について誰かが考えていますか?どんな助けでも大歓迎です!

4

1 に答える 1

4

を使用できますko.dataFor(elem)。ここで、elem は koGrid ルート要素の子 div です。これは、koGrid がメインの Grid オブジェクトで ko.applyBindings を実行する要素です。私の知る限り、これは文書化されておらず、新しいリリースで変更される可能性があります (これは少なくともバージョン 2.1 で動作します)。また、私が知らないより良い/安全な方法があるかもしれません。

jsfiddle の例を参照してください: http://jsfiddle.net/antishok/23D7C/11/

于 2013-01-17T08:35:22.570 に答える