次のように、Knockout-Kendo プラグインを使用してコードで定義された KendoUI グリッドがあります。このグリッドの列数は、サーバーから受信した json に応じて変化することに注意することが重要です。
<script type="text/html" id="grid">
<div class="grid-input input" data-bind="kendoGrid:
{
data: RowList,
columns: ko.toJS(GridHeader.ColumnDefinitionList),
rowTemplate: 'kendoui-grid-row',
altRowTemplate: 'kendoui-alt-grid-row',
useKOTemplates: true,
scrollable: false,
pageable: { pageSize: 10 },
sortable: true
}"></div>
</script>
<script type="text/html" id="kendoui-grid-row">
<tr data-bind="visible: IsDeleted() == false, template: { name: 'grid-row' }"></tr>
</script>
<script type="text/html" id="kendoui-alt-grid-row">
<tr data-bind="visible: IsDeleted() == false, template: { name: 'grid-row' }" class="k-alt"></tr>
</script>
<script type="text/html" id="grid-row">
<td><div class="grid-button delete-row-button"><span class="icon-delete"></span></div></td>
<!-- ko foreach: CellList -->
<td data-bind="template: { name: Input.Type, data: Input }">
</td>
<!-- /ko -->
</script>
<script type="text/html" id="text">
<input class="text-input input k-textbox" data-bind="value: Value" />
</script>
この場合、テキスト ボックスで満たされたグリッドがあります (グリッドの各セルには、テキスト タイプの入力があります)。今私の問題は、入力にテキストがあってもグリッドヘッダーをクリックしてソートしても何も起こらないことです。私がやりたいことは、ソートの対象を定義できるようにすることです。この場合、それはグリッド セル内の入力の値になります。