在Oracle APEX中如何配置并使用多个data-id属性?
操作步骤与JS调用方法
一、报表HTML表达式配置
- 如果你需要保留原有存储ID的
data-id属性,新增独立的LAST_NAME存储字段(推荐,不会影响原有逻辑),直接在原有配置data-id=&ID.的同一个HTML标签内,空格后追加属性即可,示例最终标签结构:
<!-- 原来的配置基础上追加data-last-name属性 --> <span data-id=&ID. data-last-name=&LAST_NAME.>报表单元格内容</span>
- 如果你确实需要将
data-id的值同时绑定ID和LAST_NAME,直接修改原有data-id的属性值做拼接即可,建议用双引号包裹避免解析错误:
<span data-id="&ID.-&LAST_NAME.">报表单元格内容</span>
注意:如果LAST_NAME字段可能存在空格、特殊符号,所有属性值都建议加双引号包裹,避免HTML结构解析异常。
二、JavaScript中读取属性的方法
获取到对应DOM元素后,两种常用读取方式:
方式1:使用dataset API(推荐)
HTML中data-开头的属性会自动挂载到DOM元素的dataset对象上,横线命名会自动转为小驼峰:
// 假设已获取到目标DOM元素,变量名为targetEl // 读取原有ID值 const id = targetEl.dataset.id; // 读取新增的lastName值(对应data-last-name属性) const lastName = targetEl.dataset.lastName; // 事件绑定获取示例 document.querySelectorAll('.report-cell').forEach(el => { el.addEventListener('click', () => { console.log('ID:', el.dataset.id); console.log('姓氏:', el.dataset.lastName); }) })
方式2:使用getAttribute方法
const id = targetEl.getAttribute('data-id'); const lastName = targetEl.getAttribute('data-last-name');
内容的提问来源于stack exchange,提问作者Goku
相关产品推荐
相关产品推荐

