Read Value of Hidden Column in JQuery

前端 未结 8 583
青春惊慌失措
青春惊慌失措 2020-12-20 13:09

I need to hide a column on the table, but after that I cannot read selected row\'s hidden column value.

 dtTable = $(\'#lookupTable\').DataTable({
       \"c         


        
8条回答
  •  陌清茗
    陌清茗 (楼主)
    2020-12-20 13:47

    The CSS selector wont work, because "visible": false in your columnDefs does not mean that the column gets the equivalent display: none; style property in the markup.

    Instead, you'll have to use the DataTables API to get the data in the hidden column.

    The function fnGetData will do the trick. It returns the text data in the cell that is passed as an argument to the function.

    Heres the example from the documentation

    oTable.$('td').click( function () {
        var sData = oTable.fnGetData( this );
        alert( 'The cell clicked on had the value of '+sData );
    });
    

    In your case, the column is hidden, thus you'll have to combine it with a second API call. Say that you click the row with the hidden first column, you can combine the fnGetData with the fnGetPosition function.

    var position = dtTable.fnGetPosition(this);
    var hiddenColumnValue = dtTable.fnGetData(position)[0];
    

    Check the documentation, it has some great examples.

    fnGetData()

    fnGetPosition()

    This is the working code

      $('#lookupTable tbody').on('click', 'tr', function () {
    
            selectedIndex = dtTable.row(this).data()[0];   
     });
    

提交回复
热议问题