2014-09-03 57 views
3

在oracle adf中,當我們將一個表從數據控件拖放到一個jsf頁面時,並且當我們運行項目時,一行表格被pre_selected。我應該怎麼做,第一次加載的頁面沒有行被選中?
我使用jdeveloper 11g R2。如何禁用oracle adf表中的自動選擇?

+0

http://stackoverflow.com/questions/14482629/what-is-the-api-to-clear-selection-on-a-aftable – Joe 2014-09-03 14:31:08

回答

4

嘗試刪除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); 
-1

您可以使用屬性rowSelection =「無」爲af:表來禁用行選擇。

-Vinoth

+0

問題引用自動選擇,不選擇禁用完全(例如不禁用手動選擇)。 – clearlight 2016-07-18 04:23:27