如何将这个haml转换成表?

时间:2010-05-20 03:11:17

标签: button html-table 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 个答案:

答案 0 :(得分:1)

好的,这段代码怎么样?这使得一个表有三列,一个用于名称(可点击的按钮,如你所做的),一个用于花费的时间,一个用于评论。时间和评论只是纯文本,因此只有名称可以点击。将来,如果要添加排序,只需将表头转换为其中包含ajax函数的链接以进行排序。我认为jQuery有一个用于排序表的函数/插件,所以你可以查看他们的doc(如果你使用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}"