Ho una DataTable jquery comejQuery dataTable non mostra i dati di default
pagina html
<div id="content">
</div>
js codice
(function ($) {
'use strict';
var module = {
addTable: function() {
var output = '<table id="table1"></table>';
$('#content').append('<p></p>' + output);
var data = [];
data = this.getData();
$('#table1').dataTable({
"data": data,
"columns": [
{
"title": 'Name',
mDataProp: 'name',
width: '20%'
},
{
"title": 'Company',
mDataProp: 'company'
},
{
"title": 'Salary',
mDataProp: 'salary'
}],
'scrollY': '400px',
'scrollCollapse': false,
'paging': false
});
},
getData: function() {
var arr = [];
for (var i = 0; i < 100; i++) {
var obj = {
name: 'John',
company: 'XYZ',
salary: '$XYZ'
};
arr.push(obj);
}
return arr;
}
};
$(document).ready(function() {
$('#content').append('Loading....');
module.addTable();
});
})(jQuery);
Al caricamento iniziale, mostra una tabella vuota. I dati arrivano dopo aver eseguito una ricerca. Come mostrare i dati per impostazione predefinita sul carico iniziale?
Change this.getData a module.getData – devconcept
Potrebbe elaborare se il vostro setup è in alcun modo diverso da [questo plunkr] (http://plnkr.co/edit/KnFfRaQZwp7mWY7n3Ukn ? p = anteprima) perché ho copiato il codice e sembra funzionare bene. –
@MartiLaast, ovviamente OP 'getData' è un esempio, non il codice reale. Immagino che carichi i dati da una risorsa esterna o da AJAX. – davidkonrad