原来在symfony下用的一个TabPanel的Helper,移植到ROR下面,同样好用,本来Symfony就是ROR的思想,所以原来的很多东西都可以用上。
tab_helper.rb
- module TabHelper
- def tabMainJS (mid, id, page_id, title,main_class='tab-pane', page_class='tab-page')
- s = ''
- s+= "<div class='#{main_class}' id='#{id}'>\n"
- s+="<script type='text/javascript'>\n"
- s+="#{mid} = new WebFXTabPane( document.getElementById( '#{id}' ) );\n"
- s+="</script>\n"
- s+="<div class='#{page_class}' id='#{page_id}'>\n"
- s+="<h2 class='tab'>#{title}</h2>\n"
- s+="<script type='text/javascript'>#{mid}.addTabPage( document.getElementById( '#{page_id}' ) );</script>\n"
- end
- def tabPageOpenClose(mid, page_id, title, page_class='tab-page')
- s = ''
- s+="</div>\n"
- s+="<div class='#{page_class}' id='#{page_id}'>\n"
- s+="<h2 class='tab'>#{title}</h2>\n"
- s+="<script type='text/javascript'>#{mid}.addTabPage( document.getElementById( '#{page_id}' ) );</script>\n"
- end
- def tabInit(mid='', n='')
- s = ""
- s+="</div>\n"
- s+="<script type='text/javascript'>\n"
- s+="setupAllTabs();\n"
- unless n.blank?
- s+="#{mid}.setSelectedIndex('#{n}');"
- end
- s+="</script>\n"
- s+="</div>\n"
- end
- end