2011-10-31 50 views
4

我想在氮氣中創建一個html列表,但無法弄清楚如何去做。基本上我想輸出:如何在氮氣中使用html列表

<ul> 
    <li>One</li> 
    <li>Two</li> 
</ul> 

我發現一些源在我氮分佈下的應用程序/氮/ src目錄/內容/ HTML列表,以便它好像有可以做這件事的元素,但沒有我嘗試使用元素編譯。有人可以提供一個會產生上述html的片段嗎?

回答

1

只需使用你的Erlang字符串列表manips這樣的:

 
body()-> 
Items = ["Joe Armstrong","Robert Virding","Mike Williams"], 
UL = "<ul>" ++ lists:flatten(["<li>" ++ X ++ "</li>" || X <- Items]) ++"</ul>", 
[ 
    #panel{body=[ 
       UL, 
       #br{}, 
       #button {text="Continue", postback=continue} 
    ]} 
].

你有一個項目列表,該列表可以從數據庫或任何東西。列表中的項目應該是字符串,以便它能夠很好地工作,如果是不同的類型,則需要首先進行轉換。然後一個列表理解和後者,你把整個列表變成一件事。希望能幫助到你 !

+1

這飛馳的工作!非常感謝! – rancidfishbreath

+0

不客氣@ranchidfishbreath –

4

以下是使用#list和#listitem氮元素而非原始HTML的版本。

body() -> 
    List = ["Apple","Orange","Banana"], 
    #list{ 
    body=[#listitem{body=Fruit} || Fruit <- ListOfFruit] 
    }. 

對於任何表情複雜多了,我通常會從列表理解切換到lists:map/2

+1

這比Muzaaya的解決方案更清潔,但我不想改變我的接受程度,因爲他給出了第一個正確的答案。我選擇基於這個例子來實現我的代碼。謝謝! – rancidfishbreath

+1

完全可以理解。很高興提供幫助。 – chops

相關問題