在页面中代码如下
<% remote_form_for :comment, :url => {:controller=>:comments, :action => :create,:tid=>@trad, :uid=>@user_id }, :update => "comments" do |f| %>
<%= f.text_area :content,:size => "40x5" %>
<%= submit_tag "评论" %>
<%#= link_to 'Back', comments_path %>
<% end %>
上边的代码请求的是/comments/create这个路径,并且会在url中带着两个参数。 tid 和uid。请求成功后会update 页面的comments的div
在controller 中的代码如下
# POST /comments
# POST /comments.xml
def create
@comment = Comment.new(params[:comment])
@comment.trad_id = params[:tid]
@comment.user_id = params[:uid]
if @comment.save
@comment_trads = get_comments_by_trad_id(params[:tid])
@user = User.find(params[:uid])
if request.xml_http_request?
render :partial => "show_comments"
end
end
end
show_comments的代码如下
<% for comment in @comment_trads %>
<%=h comment.content %> 发布人:<%=@user.login%><br>
<%end%>
rails ajax 方式提交表单
最新推荐文章于 2021-08-06 04:04:34 发布