如何复制项目/记录?

时间:2017-02-02 19:43:24

标签: google-app-maker

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

我在表格中输入数据,然后我想在新项目/记录/行*中精确复制该数据。

*不确定正确的用语。

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:3)

很抱歉反应迟钝。这是你应该做的:

添加"副本"行中的按钮。在onClick on that按钮上,添加以下代码:

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循环浏览项目的所有属性,这样您就不必手动指定每条记录,但我没有时间尝试这个

编辑:

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

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();