2012-07-27 59 views
0

我想通過jquery ajax獲取一個link_to來顯示不同的局部區域,用於每個導航選項卡鏈接。用ajax-rails渲染不同的局部區域3

但似乎無法讓它工作,它將每個鏈接重定向到根索引。

我想單擊我的導航菜單中的鏈接,並顯示profile-data div中該鏈接的部分:_grundskola.html.erb,_gymnasium.html.erb,_universitet.html.erb

例子:

我明白,例如導航鏈接「universitet」應該叫的動作DEF universitet至極調用universitet.js.erb至極呈現在div部分_universitet.html.erb

的導航菜單 - 在show.html.erb

<ul class="nav nav-tabs"> 
    <li><%= link_to "Grundskola", :action => 'grundskola', :remote => true %></li> 
    <li class="active"><%= link_to "Gymnasium", :action => 'gymnasium', :remote => true %></li> 
    <li><%= link_to "Universitet & Högskola", :action => 'universitet', :remote => true %></li>  
</ul> 

user_controller.rb

def universitet 
    respond_to do |format| 
     format.js 
    end 
    end 

universitet.js.rb

$("profile-data").html("<%= escape_javascript(render(:partial => 'universitet')) %>"); 

_universitet.html.erb

<% groups = @user.friends.group_by(&:college_name) %> 
<% sorted_groups = groups.sort_by{|key, values| values.count}.reverse %> 
<% sorted_groups.each do |collegename, friends| %> 
<% next if collegename.blank? %> 
<div class="contentbox"> 
    <div class="box-header"> 
     <h3><%= collegename %></h3> 
     <div class="meta-info"> 
      <p><i class="icon-map-marker"></i> Malmö</p> 
      <p><i class="icon-user"></i><span class="count"> <%= friends.count %></span> vänner</p> 
     </div> 
    </div> 
    <ul class="friends-list"> 
     <% friends.map do |friend| %> 
     <li><%= image_tag(friend.image) %> 
      <% end %> 
     </ul> 
    </div> 
<% end %> 

我得到了錯誤的鏈接結構,HTML輸出:

<li><a href="/auth/failure?action=universitet&amp;controller=users&amp;remote=true">Universitet &amp; Högskola</a></li> 

任何幫助,將不勝感激。

回答

0

嘗試增加格式的鏈接

例如

<li><%= link_to "Grundskola", {:action => 'grundskola',:format=>:js}, :remote => true %></li> 
+0

- 不會工作:/給這個HTML輸出:

  • Grundskola
  • SHUMAcupcake 2012-07-27 19:59:06

    +0

    你將:action和:控制器內{}? – PriteshJ 2012-07-27 21:52:09

    +0

    是的,但它重定向我的根索引.. – SHUMAcupcake 2012-07-27 23:18:22