2013-04-20 77 views
4

我有一个Rails应用程序,其中包含列表中的潜在客户。在其中一个列中,我在下拉菜单中显示潜在客户的状态。我想要启用更改此下拉列表中选定值的潜在客户状态。从下拉列表中选择值的更改提交Rails

这是我的尝试:

的代码显示在表格单元格的形式:

 <% @leads.each do |lead| %> 
    <tr> 
    <td><%= lead.id %></td> 
<td><%= form_for(lead,:url => 'update_lead_status') do |f| %> 
       <div class="field"> 
       <%= f.select :status, ["to_call","called","confirmed","lite"], :selected => lead.status, onchange: "this.form.submit();" %> 
       </div> 
      <% end %> 
     </td> 

我update_lead_status方法导致控制器:

#PUT 
    def update_lead_status 
    @lead = Lead.find(params[:id]) 
    respond_to do |format| 
     # format.js 
     if @lead.update_attributes(params[:lead]) 
     format.html { redirect_to leads_url, notice: 'Lead was successfully updated.' } 
     format.json { head :no_content } 
     else 
     format.html { render action: "edit" } 
     format.json { render json: @lead.errors, status: :unprocessable_entity } 
     end 
    end 
    end 

而且我想要的提交成为Ajax风格而不会让人耳目一新。

回答

4

套装形式ID,然后提交表单

<%= form_for(lead,:url => 'update_lead_status',:html=>{:id=>'lead_form'}) do |f| %> 

<%= f.select :status, ["to_call","called","confirmed","lite"], :selected => lead.status, onchange: "$('#lead_form').submit();" %> 
<% end %> 
+0

或者你需要电平变化之前加空{} – tomekfranek 2016-08-08 09:35:26

相关问题