SAP UI5 表格行项目内的按钮点击之后,如何获得当前所在的表格行项目的数据

简介: SAP UI5 表格行项目内的按钮点击之后,如何获得当前所在的表格行项目的数据

我的 SAP UI5 教程这篇文章 下面,有个朋友留言咨询一个问题:

我想问一个问题就是,我在table表格里放了一个按钮,就是如何点击按钮能够获取到本行的数据呀,

本文专门解答。

首先我们得在 Table 行项目里构造一个按钮出来。

重用我教程里步骤 33:SAP UI5 应用开发教程之三十三 - SAP UI5 应用的响应式布局特性(Responsiveness) 的源代码。

做出如下修改:

  • InvoiceList.view.xmlColumns 区域里,新增一个 Column,随便显示一个文本,比如解绑:

  • items 元素的 ColumnListItem 元素下面,新增一个 Button 元素:

因为我这个例子,使用本地 SAP UI5 应用消费一个远端的 OData 服务,因此会遇到跨域错误(CORS error),为了临时避开这个问题,使用下面的命令行启动 Chrome,让 Chrome 忽略跨域错误:


chrome.exe --user-data-dir="C:/temp" --disable-web-security

接着按照我教程里介绍的方法,本地启动 SAP UI5 应用,打开如下 url,就能看到这个行项目里包含了按钮的列表了:

http://localhost:8080/webapp/index.html

打开文件夹 33 的 InvoiceList.controller.js,实现按钮的点击处理函数 onUnbind

如何在 onUnbind 函数里,根据传递进来的输入参数 oEvent,获取被点击的按钮所在的表格行项目的其他数据呢?

假设我们想获取表格行项目的 Title 数据,注意这一点, Title 列和解绑按钮,具有同样的父控件,那就是表格行项目本身。

因此,基本实现思路就是:

  1. 从 oEvent 输入参数,获得当前被点击按钮所在的表格行项目的实例
  2. 根据表格行项目,获取其子控件即 Title 字段
  1. 打印 Title 字段的值

因此,onUnbind 完整的实现代码如下:

onUnbind: function(oEvent){
            var oLineItem = oEvent.getSource().getParent();
            var oTitleField = oLineItem.getAggregation("cells")[1];
            alert(oTitleField.getProperty("title"));
        },

  • var oLineItem = oEvent.getSource().getParent():oEvent.getSource() 返回的是发生点击事件的控件,即解绑按钮本身。解绑按钮调用 getParent,返回其父控件,即被点击的解绑按钮所在的表格行项目。
  • var oTitleField = oLineItem.getAggregation(“cells”)[1];

这一行的含义是,行项目实例的聚合属性里一共包含了 6 个元素,分别对应表格的六个列。

我们可以在调试器里,观察到这个索引为 1 的聚合内容:

最后的效果,点击任意一个行项目的按钮,就能打印出该行项目 Name 字段的值(绑定到 title 属性)。

相关文章
|
1天前
|
前端开发
Element UI 【实战】纯前端对表格数据进行增删改查(内含弹窗表单、数据校验、时间日期格式)
Element UI 【实战】纯前端对表格数据进行增删改查(内含弹窗表单、数据校验、时间日期格式)
22 6
|
1天前
Element UI 表格数据格式化
Element UI 表格数据格式化
4 0
|
15天前
|
关系型数据库 MySQL API
实时计算 Flink版操作报错合集之同步MySQL数据到另一个MySQL数据库,第一次同步后源表数据发生变化时目标表没有相应更新,且Web UI中看不到运行的任务,该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
143 0
|
19天前
|
Java Maven
SpringBoot项目接入Jco调用SAP接口遇到的问题
在SpringBoot项目中接入SAP接口通过Jco时遇到两个主要问题。首先,Jco不允许重命名或重新打包"sapjco3.jar",解决方案是将jar安装到本地和服务器的Maven仓库,配置pom.xml避免打包,并在服务器上更新环境变量。其次,调用后需释放`DestinationDataProvider`以防止异常。此外,调用SAP函数的步骤包括设置入参、执行和获取结果,涉及字段、结构和表类型的数据操作。
45 0
|
25天前
|
XML IDE 开发工具
【Android UI】自定义带按钮的标题栏
【Android UI】自定义带按钮的标题栏
30 7
【Android UI】自定义带按钮的标题栏
|
2月前
|
Kubernetes Oracle 关系型数据库
实时计算 Flink版产品使用合集之web ui能否在线管理数据source和处理数据
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2月前
|
存储 安全 测试技术
使用 Visual Studio Code 创建 SAP UI5 项目遇到 self-signed security certificate 相关问题
使用 Visual Studio Code 创建 SAP UI5 项目遇到 self-signed security certificate 相关问题
|
2月前
|
监控 测试技术
SAP 电商云修改 Product Catalog Staged 版本数据后,同步到 online 版本的 UI 操作
SAP 电商云修改 Product Catalog Staged 版本数据后,同步到 online 版本的 UI 操作
|
2月前
|
JavaScript 前端开发
试读版:如何找出 SAP 标准 Fiori 应用某个按钮点击后执行的 JavaScript 源代码
试读版:如何找出 SAP 标准 Fiori 应用某个按钮点击后执行的 JavaScript 源代码
|
2月前
|
存储 安全 数据管理
SAP S4HANA 数据归档流程详解
SAP S4HANA 数据归档流程详解