如何复制 A Item/Record?

How Can I Duplicate A Item/Record?

(删除了我的旧问题以简化它。)

我在 table 中输入数据,然后我想在新 item/record/row*.

中精确复制该数据

*不确定正确的术语。

有什么办法可以实现吗?

抱歉回复缓慢。这是你应该做的:

在行中添加一个 "copy" 按钮。在该按钮的 onClick 中,添加此代码:

var createDataSource = widget.datasource.modes.create;
var rowDataSource = widget.datasource;
createDataSource.item.foo = rowDataSource.item.foo;
createDataSource.item.bar = rowDataSource.item.bar;
// And so on for each field
createDataSource.createItem();

您或许可以确保 javascript for-in 遍历项目的所有属性,这样您就不必手动指定每条记录,但我没有时间对此进行试验。

编辑:

上面的代码不会立即在列表中显示复制的记录,因为我使用了row的创建数据源,而不是lists的创建数据源。试试这个:

var rowDataSource = widget.datasource;
// Instead of using the row  datasource for create, explicitly use the data source of your list.
var listDatasource = app.datasources.NameOfYourListsDataSource;
var createDataSource = listDatasource.modes.create; 

createDataSource.item.foo = rowDataSource.item.foo;
createDataSource.item.bar = rowDataSource.item.bar;
// And so on for each field
createDataSource.createItem();