0

我正在将表单重构为 AJAX 发布请求。

这是现有的表格:

    <%= form_for([@group, @invitation], :remote => true, :html => { :'data-type' => 'html', :class => 'fbinvite_form', :id => friend[:identifier]}) do |f| %>
        <%= f.hidden_field :recipient_email, :value => "facebook@meetcody.com" %>

        <div class = "fbinvite btn_list_right" id = "<%= friend[:identifier] %>">
        <%= f.submit "Invite", :class => "btn btn-medium btn-primary", :name => "fb" %>
        </div>
    <% end %>

在控制器中,我有检查提交输入名称的逻辑:

if params[:fb]
... 
elsif params[:somethingelse]
...
end

这就是背景。我现在正在尝试用以下 ajax 替换上面的表单(添加了虚拟数据以使其更清晰):

$.post('/groups/7/invitations', { 
  "recipient_email": "facebook@meetcody.com",
  "commit" : "fb",
  "fb" : "fb"
}, function(response) {
  alert("invite created!");
});

这成功地击中了控制器,但在条件上不评估为真if params[:fb]。如您所见,我尝试了一些非常基本的方法来传递该参数,但它显然不起作用。

如何更改我的 ajax 请求以便params[:fb]评估为true

4

0 回答 0