簡體   English   中英

帶有列的選定行的數據表數據

[英]datatable data of selected row with column

我正在嘗試獲取由所選行的名稱引用的數據表的特定列,但它選擇特定列的行或所有數據,而不是所選行的特定列值:

 var columnValue1 = getTable().column('ALEN:name').rows( { selected: true } ).data();
    var columnValue2 = getTable().rows( { selected: true } ).column('ALEN:name').data();

輸出:

Columnvalue1 : 不僅輸出選定行的 'ALen' 列,而是輸出完整的選定行 Columnvalue2 :不僅輸出選定行的 'Alen' 列的所有行的數據

正如評論中所說,這取決於 DataTable 初始化(ajax 或預充電數據),如果您有單選或多選...

多項選擇示例:

如果您有帶有 ajax 的數據表,您可以直接訪問字段:

var rowsData = getTable().rows({ selected: true }).data().filter(x => x.FieldName <= 0).toArray()

如果您沒有 ajax 並且您有預充電數據:

var rowsData = getTable().rows({ selected: true }).data().filter(x => x[15] <= 0).toArray()

最后,您可以遍歷 rowsData 因為它是一個帶有字段的對象(行)數組。

單選示例:

如果您有帶有 ajax 的數據表,您可以直接訪問字段:

var fieldValue = getTable().row({ selected: true }).data().FieldName

如果您沒有 ajax 並且您有預充電數據:

var fieldValue= getTable().row({ selected: true }).data()[15]

我創建了一個函數,該函數對名稱進行索引,然后確定他在所選行中的位置,例如我想返回名稱為 Alen 的行的值:

var columnValue2 = getTable().rows( { selected: true } ).data()[0][tab.getColumnIndex("Alen")];

這是我的功能:

this.getColumnIndex = function(ColumnName){
        var index;
        //dataTableOption : function to declare option of datatable like columns-searching 
        for (let i=0;i<this.dataTableOption.columns.length; i++ ){
            
            if ( this.dataTableOption.columns[i].name == ColumnName){
                
                 index =i;
        }
        }
        return index ;
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM