繁体   English   中英

替换Rails表单字段

[英]Replacing Rails form fields

我正在学习RoR,并将表单的文本框“映射”到字符串类型的数据模型的字段,这很简单:

<%= form_for(@user) do |f| %>
  <div class="field">
    <%= f.label :name %><br>
    <%= f.text_field :name %>
  </div>
  ....
  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

但是,我有一个datetime类型的字段(dob),默认的表单控件包含五个我不喜欢的下拉列表,因此我想使用在此处找到的foundation-datetimepicker-rails gem。

脚手架为日期时间类型生成的原始代码如下:

<div class="field">
  <%= f.label :dob %><br>
  <%= f.datetime_select :dob %>
</div>

但是,如何替换上面的内容,使其与下面的javascript控件类似,以显示该控件并将其链接到dob字段:

<input class="datetimepicker" type="text" >
<script type="text/javascript">$('.datetimepicker').fdatetimepicker()</script>

更新 :按照下面的Mike Desjardins的回答,datetimepicker可以正常工作并显示,但是它位于现有内容的顶部。 在下面的屏幕截图中,datetimepicker当前位于以下位置:

<%= f.label :company_id %>

_form.html.erb

<%= form_for(@note) do |f| %>
  <div class="field">
    <%= f.label :date %><br>
    <%= f.text_field :date, :class => 'datetimepicker' %>
  </div>

  <div class="field">
    <%= f.label :company_id %><br>
    <%= f.select(:company_id, Company.order("name").map { |s| [s.name, s.id] }) %>
  </div>
  <div class="field">
    <%= f.label :contact %><br>
    <%= f.text_field :contact %>
  </div>

  <div class="actions">
    <%= f.submit %>
  </div>

  <%= link_to "home", root_path, { :class=>"button expand" } %>

  <script type="text/javascript">
    $(document).ready(function() {
      $('.datetimepicker').fdatetimepicker();
    });
  </script>
<% end %>

原始视图

原始视图

目前来看

目前来看

这样的事情行吗?

<div class="field">
  <%= f.label :dob %><br>
  <%= f.text_field :dob, :class => 'datetimepicker' %>
</div>

<script type="text/javascript">
  $(document).ready(function() {
    $('.datetimepicker').fdatetimepicker();
  });
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM