Quantcast
Channel: Recent Discussions — DataTables forums
Viewing all articles
Browse latest Browse all 81994

"TypeError: oSettings is null" in var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex

$
0
0
Hi all, being a newbie to datatables I'm having a problem.
My table is being opened and filled depending on which link one clicks. The first time there's no problem with opening/closing the rows to show detailed info. But after clicking the other link. opening/closing the rows doesn't function anymore.
Instead I'm getting an Exception : "TypeError: oSettings is null" in:

this.fnIsOpen = function( nTr )
{
var oSettings = _fnSettingsFromNode( this[DataTable.ext.iApiIndex] );
var aoOpenRows = oSettings.aoOpenRows;
......

Anyone any ideas how to solve this one?

kind regards Auke Poortman


This is my code:
 

var str="";
var oTable;
 
/* Formating function for row details */
function fnFormatDetails ( nTr )
{
    var aData = oTable.fnGetData(nTr);
    var sOut = '<table cellpadding="5" cellspacing="0" border="0" style="padding-left:50px;">';
    sOut += '<tr><td>Filesize:</td><td>' + aData.filesize + '</td></tr>';
    sOut += '<tr><td>runbatchID:</td><td>' + aData.runbatchID + '</td></tr>';
    sOut += '<tr><td>Starttijd verwerking:</td><td>' + aData.starttijdBatch + '</td></tr>';
    sOut += '<tr><td>Eindtijd verwerking:</td><td>' + aData.eindtijdBatch + '</td></tr>';
    sOut += '<tr><td>Duur verwerking:</td><td>' + aData.eindtijdBatch + '</td></tr>';    
    sOut += '</table>';
	
    return sOut;
}

$(document).ready(function() {
	 

	oTable =$('#datatable').dataTable( {
		"bProcessing": true,
		"bStateSave": true,
		"bServerSide": true,
		"bFilter": false,
		"bLengthChange": true,
		"bRetrieve": true,
		"aaSorting": [[ 1, "desc" ]],
		"fnServerParams": function ( aoData ) {
			aoData.push( { "name": "env",
				           "value": "<?php print($_GET['env']); ?>" } );
			aoData.push( { "name": "customer",
				           "value": $("#filter_customer").mcDropdown().getValue()[0] } );
			aoData.push( { "name": "filename",
				           "value": document.getElementById('filter_filename').value } );
			aoData.push( { "name": "filter_start",
		           	       "value": document.getElementById('filter_start').value } );   
			aoData.push( { "name": "filter_finish",
        	       "value": document.getElementById('filter_finish').value } );       	       
		},
		"sAjaxSource": "AJAX/datatables/Postbus_data.php",
		"aoColumns": [
			{ "mDataProp": "details_png", "bSortable": false },
  			{ "mDataProp": "date", "bSortable": true },
  			{ "mDataProp": "time", "bSortable": false },
            { "mDataProp": "customer", "bSortable": true  },
            { "mDataProp": "filename", "bSortable": true  },
            { "mDataProp": "filesize", "bSortable": true, "bVisible": false  },
            { "mDataProp": "transferstatus", "bSortable": true  },
            { "mDataProp": "runbatchID", "bSortable": true, "bVisible": false },
			{ "mDataProp": "starttijdBatch", "bSortable": true, "bVisible": false  },
			{ "mDataProp": "eindtijdBatch", "bSortable": true, "bVisible": false  },
            { "mDataProp": "batchstatus", "bSortable": true   }
        ]
	} );


	 $('#datatable tbody td img').live( 'click', function () {
	        var nTr = $(this).parents('tr')[0];
	        if ( oTable.fnIsOpen(nTr ) )
	        {
	            /* This row is already open - close it */
	            this.src = "css/images/datatables/details_open.png";
	            oTable.fnClose( nTr );
	        }
	        else
	        {
	            /* Open this row */
	            this.src = "css/images/datatables/details_close.png";
	            
	            oTable.fnOpen( nTr, fnFormatDetails(nTr), 'details' );
	        }
	    });
} );

 

Viewing all articles
Browse latest Browse all 81994

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>