2014-02-27 31 views
1

我使用下面的jQuery的渲染部分的按鈕被點擊Ruby on Rails的,渲染使用jquery部分只是顯示文本

$(document).ready(function() { 
    $(".service-type").click(function(e) { 
    e.preventDefault(); 
    $('#details').html("<%= escape_javascript(render(:partial => 'my_partial', 
     :locals => { f: f })) %>"); 
    }); 
}); 

時,但不是它顯示它插入下面的部分到我的頁面

<%= escape_javascript(render(:partial => "my_partial", :locals => { f: f })) %> 

任何想法,我哪裏出錯了?

+0

您需要使用ERB處理該文件,看起來您可能將其從資產管道中提供出來。如果您向我們提供有關代碼位置以及文件名稱的更多信息,我們可以提供更多幫助。 – meagar

+0

此外,只是'渲染'my_partial',f:f'。自Rails 2.3以來,你不需要':partial /:locals'。 – meagar

+0

該文件名爲_my_partial.html.erb –

回答

2

的JS是在資產/ JavaScript的/ tasks.js

您需要將您的JavaScript移動到哪個文件定義表單。您可以通過添加.erb擴展來使您的文件評估嵌入式Ruby,但這不會有幫助,因爲表單構建器(f)在此請求的上下文中不存在。

您應該移動的JavaScript該斑點直接進入你的看法,可能是你form_for塊內,使之具有訪問變量f,假設fFormBuilder

+0

好吧,太好了!感謝您的幫助。現在可行! –