gpt4 book ai didi

c# - 剑道网格单元格编辑

转载 作者:太空狗 更新时间:2023-10-30 00:41:09 25 4
gpt4 key购买 nike

我想手动编辑一个单元格,然后根据输入的数据,自动在另一个单元格上显示内容。

例如:如果数量发生变化,则应计算总计(价格*数量)并将结果显示在总计列

enter image description here

是否可以使用 Kendo 网格?任何帮助表示赞赏。

最佳答案

是的,这是可能的。如果您搜索“KendoUI 网格计算字段”,您可以在互联网上找到一些信息。

解决方案取决于您选择的编辑模式类型(“inline”、“incell”或“popup”)。由于我在您的网格中没有看到任何包含用于触发编辑的按钮的列,因此我知道您正在编辑 incell。然后解决方案是拦截 save 事件并以此计算字段。

让您的 DataSource 定义为:

var ds = {
data : [
{ Id: 1, ItemName: "Galaxy", Price: "25000", Qty: 2, Total: 50000 },
{ Id: 1, ItemName: "Lumia", Price: "18000", Qty: 1, Total: 18000 },
{ Id: 1, ItemName: "Experia", Price: "10000", Qty: 3, Total: 30000 }
],
schema : {
model: {
id : "Id",
fields: {
Id : { type: 'number' },
ItemName : { type: 'string' },
Price : { type: 'number' },
Qty : { type: 'number' },
Total : { type: 'number', editable: false }
}
}
}
};

那么你的网格应该是这样的:

var grid = $("#grid").kendoGrid({
dataSource: ds,
editable : "incell",
pageable : false,
columns :
[
{ field: "ItemName", title: "Item Name" },
{ field: "Price", title: "Price" },
{ field: "Qty", title: "Qty" },
{ field: "Total", title: "Total" }
]
}).data("kendoGrid");

您需要添加到 Grid 定义的是 save 事件处理程序,它使用 e.values 检查哪个字段已更改(其中 esave接收到的事件信息)计算新的Total,在模型上使用set方法设置.

    save : function (e) {
if (e.values && (e.values.Qty || e.values.Price)) {
var qty = e.values.Qty || e.model.Qty;
var price = e.values.Price || e.model.Price;
e.model.set("Total", price * qty);
}
}

此处示例:http://jsfiddle.net/qA8QX/

关于c# - 剑道网格单元格编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22573858/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com