2016-02-28 104 views
1

我需要從對象列表創建html表。 例如,我有對象列表:
從Dojo中的對象列表創建表的最佳方式?

[{name: aaa, surname : ssss}, {name: nnn, surname : rrrr}....] 

,我想有html表看起來像這樣:

|Name|Surname| 
    |aaaa|sssss | 
    |nnnn|rrrr | 

什麼是做到這一點的最好方法是什麼?

AngularJs已得到ngRepeate指令,它允許快速和舒適地創建表。有Dojo有類似的方式嗎?

回答

1

您可以使用Dojo DataGrid從對象中填充/渲染表格;

https://dojotoolkit.org/reference-guide/1.10/dojox/grid/DataGrid.html

所以語法可能看起來有點像下面;

var grid = new DataGrid({ 
     id: 'grid', 
     structure: layout 
    }); 

你可以有你的「結構」參數傳遞到DataGrid 即

layout = [{name: aaa, surname : ssss}, {name: nnn, surname : rrrr}....] 

希望這有助於人的對象列表!

1

是的,使用dgrid。它得到很好的支持和維護。在這裏你有一個例子如何create the grid from JSON。還有大量演示如何在頁面上配置dgrid組件以顯示各種類型的數據(例如,將某些行或列連接在一起)。

0

我認爲這個問題的正確答案是:不,在dojo中沒有像angular的ng-repeat這樣的東西,至少不是在html的一面。就像Amiramix提到的那樣,最接近你能做的就是dgrid。但是它的使用比簡單的角度重複更復雜一點。

如果你只是想做一個簡單的html表,它可能是矯枉過正的,但如果你需要更強大的表,它會爲你的錶帶來很多有用的功能。所以根據你的用例可能值得一試。如果您不想渲染幾行數據的靜態視圖,可以在dgrid.io上找到完整的教程。如果你使用的是MVC框架,你可能有一個模板引擎,它可以完全滿足你的需求,無論你使用的是Dojo還是不使用Dojo,從你的問題中,我們都不需要'除了你使用的道場之外,你真的不知道什麼)。

相關問題