我有一个表单部分,在带有id" chapcomments"的div中,带有提交标记 -
<%= f.submit "Post", remote: true %>
在正确的视图文件夹中,我有create.js.erb -
$('#chapcomments').html("<%=j render 'shared/chap_comment_complete' %>");
在控制器中我有格式块,包括
def create
@chap_comment = current_user.chap_comments.build(chap_comment_params)
respond_to do |format|
if @chap_comment.save
format.js
format.html {redirect_to chapter_path(@chap_comment.chapter)}
else
format.html { render :new }
format.json { render json: @chap_comment.errors, status: :unprocessable_entity }
end
end
end
...但我没有得到ajax行为......
我哪里错了?
答案 0 :(得分:1)
您已进行更改,以便JS位于视图中的右侧js.erb文件中,但您需要将remote: true
部分从提交标记移动到form_for
声明中,否则将呈现format.html响应块而不是format.js。