[英]Individual column searching in Pentaho CDE BI server
CDE Pentaho中的表組件基於datable,我想在我的表中實現此功能https://datatables.net/examples/api/multi_filter.html
$(document).ready(function() {
// Setup - add a text input to each footer cell
$('#example tfoot th').each( function () {
var title = $('#example thead th').eq( $(this).index() ).text();
$(this).html( '<input type="text" placeholder="Search '+title+'" />' );
} );
// DataTable
var table = $('#example').DataTable();
// Apply the search
table.columns().eq( 0 ).each( function ( colIdx ) {
$( 'input', table.column( colIdx ).footer() ).on( 'keyup change', function () {
table
.column( colIdx )
.search( this.value )
.draw();
} );
} );
} );
我無法正常工作,收到了錯誤處理組件消息,我嘗試將其作為js片段包含在內,作為外部來源,在后提取和后執行功能中,我認為每列的索引不足導致這個問題,我在輸出選項中包括了索引,但也沒有用,
我還發現了這種替代方法http://jsfiddle.net/CmMfJ/2/#collaborate
var table = $('#example').DataTable();
$("#example tfoot th").each( function ( i ) {
var select = $('<select><option value="">All</option></select>')
.appendTo( $(this).empty() )
.on( 'change', function () {
var term = $(this).val()!=='' ? '^'+$(this).val()+'$' : '';
table.column( i )
.search(term, true, false )
.draw();
} );
table.column( i ).data().unique().sort().each( function ( d, j ) {
select.append( '<option value="'+d+'">'+d+'</option>' )
});
});
我沒有用該代碼得到任何錯誤,但是它沒有用,表沒有更改,在兩種情況下,在Post Execution函數中,我都這樣做了:函數f(){code},我還更改了變量#example對於我的桌子的名字,什么都沒有用,任何幫助將不勝感激,謝謝。
您的postExecution方法可能是正確的方法,但是您無法在該div上創建新的DataTable。 它已經被創建。
如果在postExecution執行期間檢查此對象,則其中一個字段(不記得哪個)使您可以訪問DataTable對象(示例中的var表)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.