1

我有一个 Infragistics 网格,当网格的 primaryKey 是 dataType 字符串时,我无法删除一行。

我无法将我的 primaryKey 设置为 dataType 编号,因为它是这种格式:“KIT_001”。是否有任何巧妙的方法可以使用删除按钮并能够使用此类数据删除行?也许是一种设置递增 ID 并将其用于删除按钮的方法?

var dataSource = [
    {"ProductID": "KIT_001", "Name": "Kit 1", "ProductNumber": "P4857"},
    {"ProductID": "KIT_002", "Name": "Kit 2", "ProductNumber": "P4567"},
    {"ProductID": "KIT_003", "Name": "Kit 3", "ProductNumber": "P4447"}
]
$(function () {
            $("#grid").igGrid({
                autoGenerateColumns: false,
                width: "100%",
                height: "500px",
                columns: [
                    { headerText: "Product ID", key: "ProductID", dataType: "string", width: "10%" },
                    { headerText: "Product Name", key: "Name", dataType: "string", width: "30%" },
                    { headerText: "Product Number", key: "ProductNumber", dataType: "string", width: "25%" },
                    { headerText: "", key: "Delete", dataType: "string", width: "10%", unbound: true, 
                     template: "<input type='button' onclick='deleteRow(${ProductID})' value='Delete' class='delete-button'/>"},
                ],
                primaryKey: "ProductID",
                dataSource: dataSource,
                features: [
                    {
                        name: "Updating",
                        enableAddRow: false,
                        editMode: "row",
                        enableDeleteRow: false,

                    }
                    ]
            });
        });

        function deleteRow(rowId) { console.log('rowId ',rowId)
            var grid = $("#grid").data("igGrid");
            grid.dataSource.deleteRow(rowId);
            grid.commit();
        }
4

1 回答 1

1

在模板中用引号将关键参数括起来:

template: "<input type='button' onclick='deleteRow(\"${ProductID}\")' value='Delete' class='delete-button'/>"
于 2015-09-18T10:40:16.313 回答