原型方法的jquery方法

时间:2011-10-21 09:36:37

标签: jquery ruby-on-rails

我正在尝试根据上一个下拉列表中的选择自动填充下拉列表框。我在网上看到了一个例子,它在控制器中使用了replace_html。我的应用程序的其余部分基于jquery。请您告诉我如何使用jquery实现它。

我的控制器代码:

def  update_releases 
  puts "inside func"
  project = Project.find(params[:project_id]) 
  @releases = project.releases
  render :update do |page| 
    page.replace 'releases'
    page.replace_html 'cycles', :partial => 'cycles', :object => cycles
  end
end

1 个答案:

答案 0 :(得分:4)

您可以编写内联jquery代码,如下所示:

def  update_releases 
  puts "inside func"
  project = Project.find(params[:project_id]) 
  @releases = project.releases
  render :update do |page|
    page << "$('#cycles').html(\"<%= escape_javascript(render :partial => 'cycles', :object => cycles ) %>\" );"
  end
end 

更好的是使用js.erb文件(假设您使用的是rails3):

def  update_releases 
  project = Project.find(params[:project_id]) 
  @releases = project.releases
  respond_to do |format|
    format.js
  end
end

并创建 update_releases.js.erb 模板:

$('#cycles').html("<%= escape_javascript(render :partial => 'cycles', :object => @cycles ) %>" )