使用PrimeFaces Demo過濾DataTable(http://www.primefaces.org/showcase/ui/datatableFiltering.jsf)爲例,我希望能夠在表格外提供「過濾」鏈接供用戶點擊(比如說沃爾沃,沃爾沃,寶馬等)。當用戶點擊鏈接時,我想切換製造商過濾器下拉菜單中的選定項目並應用過濾器。我一直無法弄清楚如何獲得過濾器屬性來進行更改。這可以通過javescript完成嗎?如何訪問選擇列表並設置當前選擇?如何以編程方式應用DataTable篩選器?
UPDATE:
繼丹尼爾的鏈接,我設法讓下拉選擇改變,但我無法得到過濾器適用。在過濾器基於輸入字段的列中,觸發鍵入會導致數據過濾,但我無法弄清楚在select上觸發什麼事件以使其過濾。以下是我正在使用的代碼:
<p:commandLink id="filterLink"
value="Click to filter to Volvo Only"
onclick="$('#carForm\\:dataTable\\:manufacturerColumn_filter').val('Volvo'),
$('#carForm\\:dataTable\\:manufacturerColumn_filter').trigger('filter')"
/>
上述創建的鏈接會將製造商過濾器切換到沃爾沃,但不會導致數據過濾。
看看我的方法:http://stackoverflow.com/q/8776589/617373爲您的過濾器做同樣的... – Daniel
感謝丹尼爾。這很有用,我可以像你展示的那樣應用全局過濾。我添加了一個更新,顯示我正在嘗試使用的代碼。我一直無法弄清楚事件是什麼,我需要觸發才能讓篩選發生在select上。 – SteveS
不用客氣,b.t.w當你發現有人對你有用或者對你有用時,你應該點擊^(向上箭頭)按鈕(看他們的工具提示)......在這種情況下它們都是:) – Daniel