按下“输入”按钮时,表单不会提交

时间:2014-01-07 04:40:52

标签: ruby-on-rails forms

我有一个表单,当用户选择创建一个新帐户时呈现。在app / views / accounts / new.js.erb中,我有一些JS渲染表单。

$("#freeze_container").find('table > tbody > tr:first').after("<%= j(render(partial: "accounts/form", locals: { account: @new_account }))%>")  

这就是部分看起来的样子:

<tr class='new-account'>
  <%= form_for(account, :remote => true, class: "account-form") do |f| %>
    <td>
      <span class="category">
        <%= f.select :category, Account::CATEGORIES %>
      </span>
    </td>
    <td>
      <span class="institution">
        <%= f.text_field :institution %>
      </span>
    </td>
    <td>
      <span class="name">
        <%= f.text_field :name %>
      </span>
    </td>
  <% end %>
</tr>

然而,这正确呈现,当我输入表单字段的值并按输入时,没有任何反应。当我查看日志时,看起来我没有采取任何行动。我做错了什么?

1 个答案:

答案 0 :(得分:2)

要使输入密钥有效,您需要input type=submit

您可以在代码中添加一个简单的submit按钮,并使用CSS隐藏它,或者更好的选项,更干净,适用于所有浏览器,您可以使用JavaScript并在表单上监听输入键被按下。请参阅this SO accepted answer,例如jQuery就可以做到这一点。