【发布时间】:2015-11-01 11:37:49
【问题描述】:
在 oracle adf 中,当我们将表从 Data Controls 拖放到 jsf 页面时,当我们运行项目时,会预先选择一行表。在第一次加载没有选择行的页面时我应该怎么做?
我使用 jdeveloper 11g R2。
【问题讨论】:
标签: oracle-adf
在 oracle adf 中,当我们将表从 Data Controls 拖放到 jsf 页面时,当我们运行项目时,会预先选择一行表。在第一次加载没有选择行的页面时我应该怎么做?
我使用 jdeveloper 11g R2。
【问题讨论】:
标签: oracle-adf
尝试删除表属性中的 selectedRowKeys 属性:
<af:table value="#{bindings.View1.collectionModel}"
...
selectedRowKeys="#{bindings.View1.collectionModel.selectedRow}">
如果你有主/子关系,设置子刷新条件为“ifNeeded”。
一旦用户选择行并触发事件,在后台 bean 中获取表的句柄(执行此操作的各种方法),然后您可以使用以下方法获取选定的行:
Iterator tableIterator = tableHandle.getSeletedRowKeys().Iterator();
if (tableIterator.hasNext()) {
...do stuff
处理完选择后,您可以清除选择并添加部分目标以再次显示表格而不进行选择。先刷新表迭代器,然后清除选中的键:
if (tableHandle.getSelectedRowKeys() != null) {
tableHandle.getSelectedRowKeys().clear();
}
AdfFacesContext.getCurrentInstance().addPartialTarget(tableHandle);
【讨论】:
参考这个,可能对你有帮助 要永久禁用 rowSelection,您可以将表 rowSelection 设置为 none 并删除它的选择侦听器和选定的 rowkey 看到这个-http://amit-adf-work.blogspot.in/2012/09/how-to-disable-adf-default-row.html 谢谢
【讨论】:
您可以使用 af:table 的属性 rowSelection="none" 来禁用行选择。
-维诺特
【讨论】: