2010-05-20 53 views
1

我有以下HAML代碼:如何將這個haml轉換成表格?

- @theLinks.each_index do |x| 
    %br 
    %form{:action=>'/Download', :method=>"post",:enctype=>"multipart/form-data"} 
    %input{:type=>"submit", :name=>"#{@theLinks[x].url}", :value=>"Name: #{@theLinks[x].Name} Study Time: #{@theLinks[x].studyTime} Comments: #{@theLinks[x].comments}"} 

基本上,每個人列出他們參加了學習時間和學習的意見。現在,這呈現爲一組按鈕。我想將它呈現爲一個表格,每行都以同樣的方式點擊(即使用'post'方法,這樣只需要編輯haml文件而不必觸摸其餘文件)。

理想情況下,我也希望能夠按名稱,時間或評論​​對錶格進行排序,但這可能會超越我自己。

那麼如何將這個按鈕列表更改爲可點擊行的表格?

回答

1

好的,這段代碼如何?這使得一個表有三列,一個用於名稱(可點擊的按鈕,比如你所做的),一個用於時間,一個用於評論。時間和評論只是純文本,所以只有名字是可點擊的。將來,如果您想添加排序,只需將表頭轉換爲在其中具有ajax函數進行排序的鏈接。我認爲jQuery有排序表,這樣你可以看看他們的文檔的功能/插件(如果你使用jquery)

%table 
    %tr 
    %th Name 
    %th Time spent 
    %th Comments 
    - @theLinks.each do |link| 
    %tr 
     %td 
     %form{:action=>'/Download', :method=>"post",:enctype=>"multipart/form-data"} 
      %input{:type=>"submit", :name=>"#{link.url}", :value=>"Name: #{link.Name}}" 
     %td= "Study Time: #{link.studyTime}" 
     %td= "Comments: #{link.comments}" 
+0

我不想有一列一個表,我希望它有三個。由於我無法直接鏈接到要下載的文件,而是必須解釋按鈕單擊以從另一臺服務器獲取無法從外部看到的數據,因此現在使用表單/按鈕是一種駭客行爲世界(即直接鏈接無用,因爲其他服務器是內部的並且沒有外部IP)。我寧願只有名稱是下載鏈接,或者是一個明顯的按鈕,表示「下載」。如果我使用這樣的li,我可以對列表進行排序嗎? – mmr 2010-05-21 15:08:46

+1

hey there,改變了我的答案,以反映你所做的澄清。那是你正在嘗試做什麼? – corroded 2010-05-22 14:45:33