簡體   English   中英

在jQuery的DataTables-Table插件中發布數據

[英]Publish data in DataTables-Table plug-in for jQuery

我用谷歌搜索了幾個小時來找到解決我問題的方法,但是直到現在還沒有運氣...

我正在使用...更正...我想使用jQuery數據表插件( http://www.datatables.net/ )顯示一些數據。

成功完成了以下步驟:

從* .asmx服務獲取JSON數據。 我什至在http://jsonlint.com/上檢查了它是否有效

{"d":{"key":1,"email":"test@test.ch","language":"de","locked":false}}

為了調試,我在代碼中添加了alert()標記。

 function LoadTable(businessUnitId) {
        $.ajax({
            url: url + "/GetAccounts",
            data: '{businessUnitId:"' + businessUnitId + '"}',
            contentType: "application/json; charset=utf-8",
            type: "POST",
            dataType: "json",
            cache: false,
            success: function(json) {
                for (var i in json.d) { // displays property name and its value --> works
                    alert(i + ": " + json.d[i]);
                }

                $('#tableAccounts').DataTable({
                    data: json.d, // tried json and json.d
                    columns: [
                        { title: "Test1", data: "key" },
                        { title: "Test2", data: "email" },
                        { title: "Test3", data: "locked" },
                        { title: "Test4", data: "language" }
                    ]
                });
            }
        });
    }

問題 :我無法在表中發布數據。 設置列標題,但不添加具有JSON對象值的行。 我認為問題可能出在columns屬性的分配上。

任何幫助都非常感謝。

TIA,澤維爾

文檔中data希望選項data是2d數組或對象數組。

但是,您正在傳遞data: json.d ,其中json.d是單個json對象。 當您要使用表時,這意味着您希望在某個時刻顯示多個項目,因此您的服務應該返回json對象數組,如下所示:

{ "d" : [ {"key":1,"email":"test@test.ch","language":"de","locked":false} ] }

如果由於某種原因您只希望從服務中返回單個項目,則可以將其轉換為單個對象的數組,並將data選項作為data: [json.d]傳遞給data: [json.d]

我創建了這個小提琴,因此您可以嘗試一下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM