我正在尝试通过 ajax/js 提交表单。当我设置 :remote => true 它仍然通过 html 提交。
<%= form_for(@message), :remote => true, do |f| %>
<%= f.label :Note_To_Doctor %>
<%= f.text_field :note %>
<%= f.collection_select(:physician_id, Physician.all, :id, :physician_name )%>
<%= f.button :send, :class => 'btn btn-info' %>
<% end %>
我可以发誓我已经这样做了。我需要创建一个 create.js.erb 吗?如果需要,里面应该有什么。另外,我应该在创建操作中放入什么作为响应块?
控制器:
def create
@message = Message.new(params[:message])
if @message.save
MessageMailer.paging(@message).deliver
respond_to do |format|
format.html { redirect_to messages_path, flash.notice = "Message was sent" }
format.js { render "index" }
end
else
@message = Message.new(params[:message])
end
end
index.js.erb
$("#messages").html("<%= escape_javascript render("messages") %>");