如何在ruby上写这个?

时间:2014-02-01 05:16:20

标签: ruby-on-rails ruby html5

<div id="datetimepicker" class="input-append date">
  <input type="text"></input>
  <span class="add-on">
    <i data-time-icon="icon-time" data-date-icon="icon-calendar"></i>
  </span>
</div>

这是我能想到的。这是错的!

<%= text_field_tag('datetimepicker',
    content_tag(:span, 
        content_tag(:i,
            {data-time-icon:'icon-time'},
            {data-date-icon:'icon-calendar'}
        ),
        {class: 'add-on'}
    ),
    {class: 'input-append'}
)%>

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

text_field_tag 用于输入,对于其他您可以使用content_tag

这是您当前的加价:

<div id="datetimepicker" class="input-append date">
  <input type="text"></input>
  <span class="add-on">
    <i data-time-icon="icon-time" data-date-icon="icon-calendar"></i>
  </span>
</div>

使用Rails助手可将其修改为:

<%= content_tag :div, :class=> "input-append date", :id => 'datetimepicker' do %>
  <%= text_field_tag '' %>
  <%= content_tag :span, :class => "add-on" do %>
    <%= content_tag :i, :data => {:time-icon => 'icon-time', :date-icon => 'icon-calendar'} %>
  <% end %>
<% end %>

然而,我更喜欢基本HTML而不是这些ActionView助手,除非它帮助解决代码问题,在这种情况下并不多...