我正在尝试根据上一个下拉列表中的选择自动填充下拉列表框。我在网上看到了一个例子,它在控制器中使用了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
答案 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 ) %>" )