2013-05-01 33 views
0

我有一個內容標記正在創建jQuery可排序的輸出。 有些項目我不想排序,所以我增加了以下對jQuery:Rails將文本添加到content_tag_for中的類中:li

cancel: ".ui-state-disabled" 

所以,現在我需要把「UI狀態禁用」到李類。

目前創造了李的代碼是這樣的:

   <% wostatus.workorders.each do |workorder| %> 
       <%= content_tag_for(:li, workorder) do %> 
        <div class="<%= workorder.type.maximo_no %> <%= workorder.priority %> "> 
         <a href="<%= workorder_path(workorder) %>"> 
         <strong><%= workorder.wonum %></strong> 
         <%= workorder.description %> 
         </a> 
        </div> 
       <% end %> 
      <% end %> 

在HTML的結果是:

<li class="workorder" id="workorder_36"> 
    <div class=" "> 
     <a href="/workorders/36"> 
      <strong>13-39870</strong> 
         Added some text again 
      </a> 
    </div> 
</li> 

在瀏覽器中,如果我編輯李類,包括「UI-國有禁用「它以我想要的方式工作。

現在,如何將「ui-state-disabled」插入到li狀態,如果workorder.wostatus.id = 232?

感謝您的幫助!在視圖

def disabled_workorder_li(workorder) 
    {:class => "ui-state-disabled"} if workorder.id == 232 
end 

然後:

回答

1

造一個配偶幫助

<%= content_tag_for(:li, workorder, disabled_workorder_li(workorder) %> 

下面是它會是什麼樣子,如果你跳過了幫手,並試圖做這一切的觀點:

<%= content_tag_for(:li, workorder, 
(workorder.id == 232) ? {:class => "ui_state_disabled"} : nil %> 

看起來很糟糕。把它放到幫手中也會使測試變得更容易。

+0

感謝您的幫助! – Reddirt 2013-05-02 04:04:51

+0

我從來沒有做過幫手 - 它去了哪裏?在模型中?謝謝! – Reddirt 2013-05-02 04:05:58

+0

他們進入app/helpers,你可以放入application_helper.rb或創建一個新的。 – 2013-05-02 04:20:31