2016-09-19 1 views
0

Ich habe ein Problem beim Auffüllen von datatables.js mit JSON-Objekt. Kann ich den AJAX-Antwortwert als Daten für die Datentabelle verwenden?JSON-Objekt zu Datatables.js

$.ajax({ 
    url:"php_action/searchloc.php", 
    type:"POST", 
    data:{ 
     origin: $('#from').val(), 
     destination: $('#to').val() 
     } , 
    dataType:"json", 
    success:function(data){ 

    $('#schedule').dataTable({ 
     "ajax": data, 
     columns: [] 
    }); 
    }, 
    error:function(){ 
    alert("error"); 

    } 
}); 
+0

Die 'ajax'-Eigenschaft eines DataTable-Konfigurationsobjekts sollte die URL sein, von der Sie Daten abrufen möchten, nicht die Daten selbst. – Quantastical

+0

aber ich brauche den Ursprung und Ziel-Wert für meine Where-Klausel in PHP – Kali

+0

die 'Ajax' -Eigenschaft kann auch ein Objekt sein, das die' URL', 'Typ' (POST/GET) und' Daten' enthält. Sehen Sie sich die [Dokumentation] (https://datatables.net/examples/server_side/post.html) für DataTables an, da dies alles erklärt. Es erwähnt auch, dass die 'ajax'-Eigenschaft direkt auf die [jQuery' ajax() 'Methode] (http://api.jquery.com/jQuery.ajax/) verweist. – Quantastical

Antwort

0

Tables hat seine eigene AJAX-Funktionalität ist die jQuery-AJAX-Methode verwendet, so dass Sie innerhalb eines Ihrer Datatable Logik nicht wickeln müssen jQuery AJAX-Aufruf.

$('#schedule').dataTable({ 
    "ajax": { 
    url:"php_action/searchloc.php", 
    type:"POST", 
    data:{ 
     origin: $('#from').val(), 
     destination: $('#to').val() 
    }, 
    dataType:"json", 
    columns: [] 
    } 
}); 
+0

Gotcha .. aber gibt es bereits Daten in der Datentabelle, wie die vorherigen Daten überschrieben werden? – Kali

+0

Nehmen Sie sich etwas Zeit, um die Dokumentation zu lesen: https://datatables.net/reference/api/ajax.reload() Als Entwickler sollten Sie immer die Dokumentation lesen, da diese oft alle Antworten enthält, die Sie suchen. – Quantastical

0

verwenden, um die data Option:

$.ajax({ 
    url:"php_action/searchloc.php", 
    type:"POST", 
    data:{ 
     origin: $('#from').val(), 
     destination: $('#to').val() 
     } , 
    dataType:"json", 
    success:function(result){ 

    $('#schedule').dataTable({ 
     data: result, 
     columns: [] 
    }); 
    }, 
    error:function(){ 
    alert("error"); 

    } 
}); 

https://datatables.net/examples/data_sources/js_array.html

Verwandte Themen