首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用simple-form和bootstrap追加和预先添加

使用simple-form和bootstrap追加和预先添加
EN

Stack Overflow用户
提问于 2013-03-09 04:27:09
回答 2查看 2.8K关注 0票数 0

我需要能够使用简单的表单输入标签使用bootstrap追加和预置。我可以用其中一个很容易地做到这一点,但不能让它们都工作。这有没有可能。

这是我使用的haml,这是一个前缀,但我在末尾需要另一个,所以使用append。

代码语言:javascript
复制
= f.input :domain, wrapper: :prepend, label: false do
  %span.add-on
    %span.icon @
  = f.input_field :domain
EN

回答 2

Stack Overflow用户

发布于 2013-03-24 11:21:43

simple_form只有用于:prepend:append的包装器,但不能同时提供这两种包装器。幸运的是,很容易构建一个同时完成这两个功能的自定义包装器。只需复制并粘贴其中一个包装器,并对其稍作修改。

这是我的解决方案:

config/initializers/simple_form.rb

代码语言:javascript
复制
config.wrappers :prepend_append, :tag => 'div', :class => "control-group", :error_class => 'error' do |b|
  b.use :html5
  b.use :placeholder
  b.use :label
  b.wrapper :tag => 'div', :class => 'controls' do |input|
    input.wrapper :tag => 'div', :class => 'input-prepend input-append' do |pa|
      pa.use :input
    end
    input.use :hint,  :wrap_with => { :tag => 'span', :class => 'help-block' }
    input.use :error, :wrap_with => { :tag => 'span', :class => 'help-inline' }
  end
end

而且,在您看来:

代码语言:javascript
复制
= f.input :url, wrapper: :prepend_append, label: false do
  %span.add-on something
  = f.input_field :url, input_html: { class: "span2" }
  %span.add-on something

最后,将此代码添加到css中:

代码语言:javascript
复制
.input-prepend .add-on,
.input-append input {
  float: left;
}

希望这能有所帮助。请确保重新启动服务器。

票数 0
EN

Stack Overflow用户

发布于 2013-09-06 00:58:34

最简单的方法是:

代码语言:javascript
复制
<%= f.input :field, :wrapper_html => {class: "input-prepend input-append"} do %>
  <span class="add-on">$</span>
    <%= f.input_field :field %>
  <span class="add-on">%</span>
<% end %>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15302708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档