如何在Kendo网格中添加具有预定义数据的新行? [英] how to add a new row with pre defined data in kendo grid?

查看:112
本文介绍了如何在Kendo网格中添加具有预定义数据的新行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用来自另一个剑道网格的选定数据向剑道网格添加新行.它显示空白行,但没有数据.这是我的代码:

I'm trying to add a new row to a kendo grid with selected data from another kendo grid. Its showing a blank row but no data. Here is my code:

        var PunishmentGridDataSource = new kendo.data.DataSource({
            schema: {
                model: {
                    id: "DICP_ACTN_TYPE_CODE",
                    fields: {
                        DICP_ACTN_TYPE_SLNO: { editable: false },
                        DICP_ACTN_TYPE_CODE: { editable: false },
                        DICP_ACTN_TYPE_NAME: { editable: false }
                    }
                }
            },
            pageSize: 5,
            data: [
                        { DICP_ACTN_TYPE_SLNO: "1", DICP_ACTN_TYPE_CODE: "1", DICP_ACTN_TYPE_NAME:"aa" }]
        });





        var PunishmentGrid = $("#PunishmentGrid").kendoGrid({
            dataSource: PunishmentGridDataSource,
            pageable: true,
            editable: 'false',
            selectable: "row",
            navigatable: true,
            filterable: true,
            sortable: true,
            groupable: true,
            scrollable: true,
            width: '250PX',
            height: '200PX',
            columns: [
              { field: "DICP_ACTN_TYPE_SLNO", title: "SL.", filterable: false, width: "30px" },
              { field: "DICP_ACTN_TYPE_CODE", title: "Code", filterable: false, width: "50px" },
              { field: "DICP_ACTN_TYPE_NAME", title: "Name", filterable: true, width: "120px" }


            ]
        });


//Handling Yes button click for grid row Selection
        $('#btnListOfValue2OK').click(function (idx, elem) {
            ClearOperationMsgTextBoxRedColor();

            var grid = $("#ListOfValueWindowGrid2").data("kendoGrid");
            var selectedItem = (grid.dataItem(grid.select()));
            var rows = grid.select(); // Can I select multiple rows by this & bind directly to the data source of another grid??





            var obj = [{ DICP_ACTN_TYPE_SLNO: selectedItem.DICP_ACTN_TYPE_SLNO, DICP_ACTN_TYPE_CODE: selectedItem.DICP_ACTN_TYPE_CODE, DICP_ACTN_TYPE_NAME: selectedItem.DICP_ACTN_TYPE_NAME }];

            var ds = $("#PunishmentGrid").data("kendoGrid").dataSource;
            ds.add(obj);
            ds.data();

            CloseListOfValueDialog2();

        });

可能是我缺少了一些非常基本的东西.请帮助我找出答案!

May be I'm missing something very fundamental. Please help me to find out!

推荐答案

我尝试了类似的设置,该设置可以按预期工作:

I tried a similar setup which works as expected:

$("button").click(function() {
  var parent = $("#parent-grid").data("kendoGrid");
  var child = $("#child-grid").data("kendoGrid");

  var selectedDataItem = parent.dataItem(parent.select());

  if (selectedDataItem) {
    child.dataSource.add({
      foo: selectedDataItem.foo
    });
  }
});

这是一个实时演示: http://jsbin.com/EpeMiwe/1/edit

这篇关于如何在Kendo网格中添加具有预定义数据的新行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆