DataTables Javascript数据源'无可用数据'

时间:2015-11-24 22:37:05

标签: javascript json object datatables

实时错误示例:http://live.datatables.net/virobeci/1/edit?html,css,js,output

我有一个与此类似的JavaScript对象:

{ 
    "rows": [
        {
            "doc": {
                "CustomerName": "abc",
                "key": "value",
                "keyabc": "value"
            }
        },
        {
            "doc": {
                "CustomerName": "abc",
                "key": "value",
                "keyabc": "value"
            }
        }
    ]
}

我已经尝试了很长时间使用JavaScript数据源初始化DataTables,如下所述:

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

这就是我正在做的事情:

    var table = $('#customersTable').DataTable( {  
        data: view,
        columns: [
            { "rows" : 'doc.CustomerName' },
            { "rows" : 'doc.CustomerName' },
            { "rows" : 'doc.CustomerName' },
            { "rows" : 'doc.CustomerName' },
            { "rows" : 'doc.CustomerName' },
            { "rows" : 'doc.CustomerName' }
        ]  
    }); 

我没有错误,只是“表格中没有数据”

表的定义如下:

    <table id="customersTable" class="table table-striped table-bordered" width="100%">
        <thead>
            <tr>
                <th>Name</th>
                <th>Number</th>
                <th>Login</th>
                <th>Party</th>
                <th>Sales-Id</th>
                <th>Sales-Party</th>
            </tr>
        </thead>
        <tfoot>
            <tr>
                <th>Name</th>
                <th>Number</th>
                <th>Login</th>
                <th>Party</th>
                <th>Sales-Id</th>
                <th>Sales-Party</th>
            </tr>
        </tfoot>

    </table>

实例:http://live.datatables.net/virobeci/1/edit?html,css,js,output

编辑 - &gt;请注意:

除了运行for循环并使新数组与样本数据源匹配之外,我无法更改数据源的格式。我想知道是否可以用这种类型的数据源初始化表

3 个答案:

答案 0 :(得分:1)

您无法正确构建数据:

var table = $('#customersTable').DataTable( { 
        processing: true,
        data: view.rows, 
        columns : [
            { data : 'CustomerName' },
            { data : 'CustomerName' },
            { data : 'CustomerName' },
            { data : 'CustomerName' },
            { data : 'CustomerName' },
            { data : 'CustomerName' }
        ]  
 }); 

你必须将正确的数组指定为data.row(尽管在你的情况下你可以简化你的结构,删除一个级别)。

请注意,您必须将数据添加到&#39;数据&#39; &#39;列的属性&#39;:

#connect-us
    padding: 380px 0 80px
    margin-top: -300px
    background-color: $darkviolet2
    text-align: center
    position: relative
    +size(100%)
    z-index: 1

答案 1 :(得分:0)

你必须在&#34;列&#34;中提到列名。配置和您的数据可以展平。

http://live.datatables.net/poganaso/2/edit

答案 2 :(得分:0)

你可以尝试这个,示例代码在这里:http://live.datatables.net/virobeci/2/edit?html,css,js,output