我有一个交互式网格,其中包含200000多行数据。除了下面列出的页码外,还有什么方法可以提供一个下拉选择列表,其中包含诸如1-40条记录,40-80条记录等选项。这样用户可以直接转到报告的末尾。
有什么方法可以实现?
因此,您本质上需要的是SELECT中足够大的序列。我认为这应该对您有用
select LEVEL
FROM DUAL
CONNECT BY LEVEL <= CEIL(:rowcount / 40);
这是创建一个序列,直到CEIL(:rowcount / 40)为止,因此如果该数目为3,则结果为1、2、3。
然后您可以将其显示为0-40、40-80、80-120,...希望这能满足您的需求。
编辑对评论的答复(更改总行数在底部):
我不认为这在APEX中成为可能,但是可以用js完成。
我建议您创建一个可以在启动时运行的DA,并且每次更改您现在使用的选择列表时。 DA将在此处生成您想要的当前文本,例如对于选择40-80,您说“ 567中的1”或其他内容,那么您将必须使用js设置此文本。
如果您还没有习惯,则必须习惯js控制台。
您将必须为网格设置一个静态ID,然后运行看起来像这样的js:
var temp = $("span#dn_main_ig_grid_vc_pageRange")[0]
temp.children[1].innerText = "text"
其中dn_main是我的网格的静态ID,所以用您的网格ID代替。您应该打开控制台并逐步进行操作,并查看每一步选择的内容。然后,一旦了解了它的功能,就可以在DA中使用它来将“文本”更改为所需的任何内容。
并且为了获得js中页面项目的值,如果您不熟悉,https://apex.oracle.com/pls/apex/germancommunities/apexcommunity/tipp/6341/index-en.html
我希望这会有所帮助