sAjaxSourceでDataTablesを使用している場合は機能しますが、ajaxを事前に実行し、aaDataプロパティを設定するとエラーが発生します。何か案は?
この方法は機能します:
// This method works fine
$('#spiderData').dataTable({
"bProcessing": true,
"sAjaxSource": "spiderOrders.cshtml?GetOrders=true&pid=" + pid + "&itemid=" + itemId + "&signatur=" + signatur + "&orderid=" + orderid + "&type=signatur",
"aoColumns": [
{ "mDataProp": "BuildOrderId" },
{ "mDataProp": "description" },
{ "mDataProp": "BuildProductOrderId" },
{ "mDataProp": "state_desc" },
{ "mDataProp": "buildProductName" },
{ "mDataProp": "program" },
{ "mDataProp": "KP_BPO" },
{ "mDataProp": "WorkOrderId" },
{ "mDataProp": "title" },
{ "mDataProp": "state_desc" },
{ "mDataProp": "contractorName" },
{ "mDataProp": "TP" }
]
});
しかし、これはしません:
// This is not working, why????
$.ajax({
type: 'GET',
url: "spiderOrders.cshtml?GetOrders=true&pid=" + pid + "&itemid=" + itemId + "&signatur=" + signatur + "&orderid=" + orderid + "&type=signatur",
data: "jalla",
success: function (data) {
$('#spiderData').dataTable({
"bProcessing": true,
"aaData": data,
"aoColumns": [
{ "mDataProp": "BuildOrderId" },
{ "mDataProp": "description" },
{ "mDataProp": "BuildProductOrderId" },
{ "mDataProp": "state_desc" },
{ "mDataProp": "buildProductName" },
{ "mDataProp": "program" },
{ "mDataProp": "KP_BPO" },
{ "mDataProp": "WorkOrderId" },
{ "mDataProp": "title" },
{ "mDataProp": "state_desc" },
{ "mDataProp": "contractorName" },
{ "mDataProp": "TP" }
]
});
}
});
最初の例の場合、返されるデータの形式は次のとおりです。
{ "aaData": [
{
"BuildOrderId":"S2008-015758.001",
"description":"Hordaland-Bergen-ALH4 - Leveranse av 2 Mb",
"BuildProductOrderId":"S2008-015758.002", .....
そして2番目の例ではこのフォーマット:
[{"BuildOrderId":"S2008-006891.001","description":"MXJP81, BERSTADHUSETMOB, HOR-00323","BuildProductOrderId":"S2008-006891.002", ....
何かが足りないのでしょうか、それとも応答のフォーマットが間違っているのでしょうか(今、数回チェックしました...)