首页 > 解决方案 > 交互式网格工具栏中的新按钮

问题描述

我需要在现有的 IG 工具栏上添加一个新按钮,该按钮将在表格列中设置特定值,然后保存记录。

有没有办法创建新按钮/更改现有交互式网格工具栏按钮的行为?

标签: oracle-apexoracle-apex-5.1

解决方案


我看到您使用的是 APEX 5.1。是的,您可以在交互式网格中自定义工具栏按钮。例如,您可以修改“保存”和“添加行”按钮的外观,还可以添加“删除”按钮。选择您的交互式网格区域,然后在属性编辑器中,为 Advanced > Static ID 输入一个值。选择属性 > 高级 > JavaScript 初始化代码并输入以下内容:

function(config) {
    let $ = apex.jQuery,
        toolbarData = $.apex.interactiveGrid.copyDefaultToolbar(), 
        toolbarGroup = toolbarData.toolbarFind("actions3"); 
        addrowAction = toolbarData.toolbarFind("selection-add-row"), 
        saveAction = toolbarData.toolbarFind("save"); // Save button

    // adding a  "Delete" button
    toolbarGroup.controls.push({type: "BUTTON",
                                action: "selection-delete",
                                icon: "icon-ig-delete", 
                                iconBeforeLabel: true,
                                hot: true
                               });


    // Modifying the buttons
    addrowAction.icon = "icon-ig-add-row"; 
    addrowAction.iconBeforeLabel = true;
    addrowAction.hot = true;

    saveAction.iconBeforeLabel = true;
    saveAction.icon ="icon-ig-save-as"; 
    saveAction.hot = true;


    //storing the config
    config.toolbarData = toolbarData;
    return config;
}

现在运行页面以查看自定义。

这是一个很好的视频,展示了如何自定义 IG 工具栏。 https://www.youtube.com/watch?v=_PBdBAfPBfQ


推荐阅读