[17.1.5]获取table插入行的问题
本帖最后由 Clark.Pan 于 2024-11-20 14:04 编辑我监听了TableRowsChanged事件发现删除的时候可以获取delectItem但是我删除某行,再ctrl+z撤销删除的时候就获取不到insert是哪一行了 监听事件的返回如图 这个该怎么获取呢 根据截图来看,insertRow的时候
row 为1 :说明是在table中数据区域的第二行(0代表第一行)
count 为1 :说明说明插入的行数是1行
isAfter为false:说明是在第二行的行前插入而非行后插入
有上述反馈参数,可以确定插入的是哪一行 Clark.Pan 发表于 2024-11-19 16:38
根据截图来看,insertRow的时候
row 为1 :说明是在table中数据区域的第二行(0代表第一行)
count 为1...
那就是我直接用第几行去获取table的数据是吧 您好,
您想通过deleteItem判断具体删除/撤销了哪条数据对吗?如果是:
在TableRowsChanged事件中,参数row表示删除行或新增行的索引,以此结合 sheet.getDataSource().getSource() 获取数据源的接口,来获取新增的具体数据。
如下示例:
spread.bind(GC.Spread.Sheets.Events.TableRowsChanged, function (e, data) {
console.log(data);
if(data.propertyName === "tableInsertRows") {
console.log(data.row);
// 获取数据源
var dataSource = sheet.getDataSource().getSource();
var table = sheet.tables.all();
var tableBindingPath = table.bindingPath();
// dataSource 返回的为table中的数据源
console.log("insertDataItem", dataSource)
}
});
Lynn.Dou 发表于 2024-11-19 16:45
您好,
您想通过deleteItem判断具体删除/撤销了哪条数据对吗?如果是:
在TableRowsChanged事件中,参数r ...
您好 要是多行删除再撤销 怎么办呢 我看返回count变成3了 但是row还是0 如图 撤销多行的话,结合row、count值动态调整下从数据源获取对应数据的方法即可。
table数据源本质是一个数组,传递不同的参数即可动态获取想要的某些条数据。上述代码是一个示例,您结合实际业务需求调整下即可。
Lynn.Dou 发表于 2024-11-19 17:36
撤销多行的话,结合row、count值动态调整下从数据源获取对应数据的方法即可。
table数据源本质是一个数组 ...
但只监听到了一次事件呀。。是我监听的方式不对吗? 用的这种方式 如图 删除了两行再撤回 只监听到了一次
页:
[1]
2