ruby-on-rails – 当点击下拉选项时,Rails:提交(通过AJAX)

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 当点击下拉选项时,Rails:提交(通过AJAX)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当选择下拉框选项时,最简单和最优雅的方式自动提交 AJAX表单?我正在创建一个管理员页面,其中管理员可以修改用户权限(其中“权限”以整数形式存储),我希望“权限”字段是一个下拉框,当管理员自动提交并更新点击他希望用户拥有的选项.

这是我目前正在查看的这个简单版本.我需要知道将其转换为远程表单的最佳方法,当单击某个选项时,该表单将自动提交.

随意指出任何切向的建议或其他任何东西…我相对来说比较新的Rails,只是达到了我可以编写代码而不经常地引用别人的工作.

<!-- This is the "index" view,by the way. -->
<% for membership in @story.memberships %>
  <% form_for membership do |f| %>
    <%= f.select :permissions,[['none',0],['admin',9]] %>
  <% end %>
<% end %>

解决方法

有几种方法来处理这个问题.当然,观察场方法是一个,但是你也可以使用一个简单的javascript或一个remote_function来实现:

这里是简单的JS方法

<% remote_form_for membership do |f| %>
    <%= f.select :permissions,9]],{},:onchange => 'this.form.submit()' %>
<% end %>

另一种方式将是这样的,并且将避开表单构建器(并且这可能有几个语法错误):

<%= select_tag(:permissions,{:onchange => "#{remote_function(:url  => permissions_path(:story_id => story,:with => "'permission='+value")}"})

我个人喜欢前者.

猜你在找的Ruby相关文章