Oracle apex 使Oracle Apex报表表元素只读

Oracle apex 使Oracle Apex报表表元素只读,oracle-apex,Oracle Apex,问候: 在apex 3.2中是否有条件使apex报表表格单元格(甚至整个报表本身)只读?我在选项中的任何地方都看不到“只读”框;我试着到处找 提前谢谢 好的,我在概念上有个错误。我想把表格变成只读的。这就是为什么我看不到“只读”框的原因。如果打开生成页面的源代码,则每列都提供了一个具有以下命名约定的id: id="f02_0001" 此表格单元格位于第2列第1行。因此,您可以使用JavaScript在列中循环并修改其属性。在本例中,我使用jQuery: var payments = $("[i

问候:

在apex 3.2中是否有条件使apex报表表格单元格(甚至整个报表本身)只读?我在选项中的任何地方都看不到“只读”框;我试着到处找


提前谢谢

好的,我在概念上有个错误。我想把表格变成只读的。这就是为什么我看不到“只读”框的原因。如果打开生成页面的源代码,则每列都提供了一个具有以下命名约定的id:

id="f02_0001"
此表格单元格位于第2列第1行。因此,您可以使用JavaScript在列中循环并修改其属性。在本例中,我使用jQuery:

var payments = $("[id^='f08_']"); // get all cells for column 8

// loop through items
$.each(payments, function(){
   alert($('#'+this.id).val());       
   // make whatever changes you want to this.id, such as make read-only
});

由于整个tabform对于特定用户是只读的,因此您可以在呈现时执行此操作,而不用使用Javascript。但是,每列需要2份副本:

  • 为授权用户而不是只读用户显示的列
  • 为非授权用户显示的相同列,元素属性设置为
    readonly=readonly
  • 可用于控制向用户显示哪些列


    我希望找到一种方法,使用单个列和元素属性的动态值来实现这一点,但我无法让它工作。

    没有一个简单的答案。您能否更具体地说明您正在尝试执行的操作?例如,什么条件会使单元格成为只读的,行与行之间是否有所不同,等等?当然。根据用户的授权级别,我希望将整个表设置为只读(例如,用户具有只读权限)。它不会因行而异。感谢您的回复Tony。为了确保安全,您需要首先将项目呈现为只读,并使用Javascript使其可供授权用户更新。否则,未经授权的用户可能通过关闭浏览器中的Javascript来规避安全性。