[英]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.