2

行 ID をクリックして取得するにはどうすればよいですか? 実際には、リモート テーブルの行 ID をグリッドの各行に割り当て、それをクリックして 2 番目のグリッドを読み込みたいと考えています。解決策はありますか?

4

2 に答える 2

5

どうぞhttp://jsfiddle.net/qvKRk/

JavaScript

var dataSample = [];
dataSample.push({
    OrderID: "1",
    ShipName: "line 1"
});
dataSample.push({
    OrderID: "2",
    ShipName: "line 2"
});
dataSample.push({
    OrderID: "3",
    ShipName: "line 3"
});

var dataSource = new kendo.data.DataSource({
    data: dataSample,
    schema: {
        model: {
            id: "OrderID"
        }
    },
    pageSize: 10
});

$("#grid").kendoGrid({
    dataSource: dataSource,
    selectable: true,
    columns: ["OrderID", "ShipName"],
    change: function () {
        var row = this.select();
        var id = row.data("id");
        $("#log").html("selected row with id= " + id);
        // sample selecting same row on second grid 
        // based on this post
        var secondGrid = $("#grid2").data("kendoGrid");
        var row = secondGrid.table.find('tr[data-id="' + id + '"]');
        secondGrid.select(row);
    }
});

$("#grid2").kendoGrid({
    dataSource: dataSource,
    selectable: true,
    columns: ["OrderID", "ShipName"]
});

HTML

master grid :
<br />
<div id="grid"></div>
<div id="log"></div>child grid :
<br />
<div id="grid2"></div>
于 2012-02-10T08:13:50.433 に答える
0
var grid = $("#GridSearchResults").data("kendoGrid");
var cel;

grid.select().each(function() {
var dataItem = grid.dataItem($(this));
cel = dataItem.InventoryItemId;
});

行が選択されると、セルには抽出する列が含まれます。注:グリッドでの選択を有効にしてください。

于 2012-09-02T02:45:28.493 に答える