簡體   English   中英

Ruby on Rails:渲染不同部分時動態添加CSS

[英]Ruby on Rails: adding css dynamically when rendering different partials

我正在通過ajax呈現不同的視圖,我想知道如何管理CSS。 我有兩個按鈕,要突出顯示活動按鈕。

index.haml

#button-group
  = link_to grid_view_path, class: "col-xs-3", remote: true do
    %span.glyphicon.glyphicon-th
  = link_to flat_view_path, class: "col-xs-3", remote: true do
    %span.glyphicon.glyphicon-th-list

#view-container
  = render "grid_view"

grid_view.js.erb

$('#view-container').html("<%= j render :partial => 'grid_view' %>");

flat_view.js.erb

$('#view-container').html("<%= j render :partial => 'flat_view' %>");

welcome_controller.rb

class WelcomeController < ApplicationController

  def index
    respond_to do |format|
      format.html    
      format.js
    end    
  end

  def flat_view
  end

  def grid_view
  end

end

在初始頁面加載時,索引頁面顯示grid_view部分,然后用戶可以單擊按鈕,它將顯示顯示平面視圖或網格視圖。 當前,glyphicon都突出顯示為藍色(假定其默認設置)。 我可能會想添加一個類到非激活鍵,並保持藍色的一個是積極的 最好的方法是什么? 或者,如果還有其他方法我應該做,請幫助。

我認為您可以直接使用引導標簽功能。

僅在選項卡內容部分中放置渲染部分,相應的選項卡將自動突出顯示。

在js.erb文件中:

$('#button_to_acc_class_to').addClass('non-active');

盡管您實際上可能想用上面的代碼制作一個像initializeView(view)這樣的JS函數,以及在視圖更改時需要更改的所有其他內容,然后從js.erb文件中調用它。 我會采用這種方法,因為當視圖完成時,您可能會添加許多行為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM