看看一个多按钮的表单的例子:
[code]
<!-- projects/new.rhtml -->
<% if params[:preview_button] %>
<div id="preview">
<h2><%= @project.name %></h2>
<% textilize @project.description %>
</div>
<% end %>
...
<%= submit_tag 'Create' %>
<%= submit_tag 'Preview', :name => 'preview_button' %>
[/code]
我们多了个Preview按钮,这样可以使用parmas[:preview_button]来得到该按钮参数:
[code]
# projects_controller.rb
def create
@project = Project.new(params[:project])
if params[:preview_button] || !@project.save
render :action => 'new'
else
flash[:notice] = "Successfully created project."
redirect_to project_path(@project)
end
end
[/code]
我们也可以使用submit_to_remote标签来调用异步Ajax完成preview。
[code]
<!-- projects/new.rhtml -->
<% if params[:preview_button] %>
<div id="preview">
<h2><%= @project.name %></h2>
<% textilize @project.description %>
</div>
<% end %>
...
<%= submit_tag 'Create' %>
<%= submit_tag 'Preview', :name => 'preview_button' %>
[/code]
我们多了个Preview按钮,这样可以使用parmas[:preview_button]来得到该按钮参数:
[code]
# projects_controller.rb
def create
@project = Project.new(params[:project])
if params[:preview_button] || !@project.save
render :action => 'new'
else
flash[:notice] = "Successfully created project."
redirect_to project_path(@project)
end
end
[/code]
我们也可以使用submit_to_remote标签来调用异步Ajax完成preview。