我正在将表单重构为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
?