我有以下表格用于使用Ajax发布数据。
<%= form_tag(check_answer_path, :id =>'myForm', :method => 'post', :remote => true) do %>
some form fields here...
<%= submit_tag('Next', :class => 'btn btn-primary') %></td>
但是当我点击“下一步”按钮时,表单不会提交。令我惊讶的是,当我删除:id和:远程属性时,表单提交没有问题(但页面重新加载我不想要的)。
目标:我想使用ajaxForm()
提交表单以处理回电,即$("#myForm").ajaxForm()
。所以我需要:remote
属性,我还需要识别我的表单(使用:id
属性)。
为什么在我添加:id
和:remote
属性时,我的表单未提交?
使用rails 3.2.8和jquery-rails。
提前致谢。
答案 0 :(得分:2)
将远程添加到表单标记意味着它将使用JS发送请求。
所以它实际上是在提交表单,但它并没有以预期的方式提交。 在您的控制器中添加以下内容:
respond_to do |format| format.js format.html end
并且您将能够响应该请求,在您的视图中放置file.js.erb并放置所需的js代码以完成请求。
希望有所帮助。