如何以编程方式将记录添加到APEX交互式网格?

时间:2018-03-26 20:54:37

标签: oracle-apex oracle-apex-5.1

我需要通过javascript代码将新记录添加到我页面上的一个交互式网格中。

我知道如何从网格中获取记录:

 var model = ig$.interactiveGrid("getViews","grid").model;
 var record = model.getRecord(rowID);

但是如何添加记录呢?那是否有功能?

我要做的是从一个网格中获取选定的行并将其插入另一个网格中的基础表中。我得到了我的javascript代码来获取在grid1中选择的记录并循环遍历它们。现在我得到grid2的模型,并希望将grid1中的记录插入grid2

1 个答案:

答案 0 :(得分:1)

尝试插入新记录并立即更新值。

var widget      = apex.region('staticIdOfIG').widget();
var grid        = widget.interactiveGrid('getViews','grid');  
var model       = grid.model; 

//insert new record on a model
var myNewRecordId = model.insertNewRecord();

//get the new record
var myNewRecord = model.getRecord(myNewRecordId);

//update record values
model.setValue(myNewRecord, 'NAME_OF_COLUMN1', 'value1');
model.setValue(myNewRecord, 'NAME_OF_COLUMN2', 'value2');

示例:https://apex.oracle.com/pls/apex/f?p=145797:8

*点击“INSERT ROW WITH VALUES”按钮

Workspace: stackquestions
login: test
pwd: test
page: 8