0

在 Rails3 应用程序中,我有一个root由单选控件(不是复选框)表示的布尔属性,我希望能够自动保存root- Ajax 样式的新值。

<%= form_tag(set_root_project_page_path(@project, page), :remote => true, :method => :put ) do -%>
  <%= radio_button_tag('root', page.id, page.root?, :onclick => "this.form.submit();") %>
  <%= submit_tag 'set root', :disable_with => 'wait...' %>
<% end -%>

我目前有 2 个提交选项:

  1. submit_tag预期工作:该操作是通过 XHR 调用的,我的set_root.js.erb模板会相应地更新页面,我不想为此单击单独的按钮,所以我尝试了:
  2. 添加:onclick => "this.form.submit();"到我的无线电控制。这会提交表单,但以经典的非 ajax 方式提交,因此我因缺少html模板而收到错误消息。

单击无线电控件时,我应该怎么做才能异步提交表单(可能是 UJS 方法)?

注意:我在我的项目中使用 jQuery。

4

2 回答 2

1

尝试:onclick => "$(this.form).trigger('submit.rails')

于 2011-03-10T18:32:05.207 回答
-1

使用表单序列化: http: //api.jquery.com/serialize/

于 2011-03-10T18:22:40.510 回答