gpt4 book ai didi

ruby-on-rails - 使用集合向 Formtastic 单选按钮添加背景图像或图像标签

转载 作者:太空宇宙 更新时间:2023-11-04 16:17:01 26 4
gpt4 key购买 nike

我在用户输入他的信用卡数据的表单中有这个 formtastic 字段:

<%= form.input :credit_card_type, :as => :radio, :collection => User.credit_card_types %>

User.credit_card_types 看起来像这样:

  def self.credit_card_types
{'Visa' => VISA, 'Master Card' => MASTER_CARD, 'American Express' => AMERICAN_EXPRESS}
end

它给我以下 html:

<li id="user_credit_card_type_input" class="radio optional">
<fieldset>
<legend class="label">
<label>Tipo de tarjeta</label>
</legend>
<ol>
<li>
<label for="user_credit_card_type_1">
<input type="radio" value="1" name="user[credit_card_type]" id="user_credit_card_type_1"> Master Card
</label>
</li>
<li>
<label for="user_credit_card_type_0">
<input type="radio" value="0" name="user[credit_card_type]" id="user_credit_card_type_0"> Visa</label>
</li>

<li>
<label for="user_credit_card_type_2">
<input type="radio" value="2" name="user[credit_card_type]" id="user_credit_card_type_2"> American Express</label>
</li>
</ol>
</fieldset>
</li>

鉴于此,我的问题是,如何为每个单选按钮标签添加特定的背景图片?我不能用 CSS 做到这一点,因为标签没有任何 id,我不能(或者我不知道如何)放一个到那时。我试图添加一个 image_tag 但它转义了 html。有什么建议吗?

最佳答案

Formtastic 可以根据您的需要进行定制。您应该能够在 config/initializers 中找到 Formtastic 配置文件。添加这样一行:

Formtastic::SemanticFormHelper.builder = SemanticCustomFormBuilder

然后在您的 lib 目录中创建一个名为 semantic_custom_form_builder.rb 的文件

class SemanticCustomFormBuilder < Formtastic::SemanticFormBuilder

def cicloon_special_radio_button_input
#define your radiobuttons here
end

end

您可以在表单中使用这样的自定义定义:

<%= form.input :credit_card_type, :as => :cicloon_special_radio_button %>

关于ruby-on-rails - 使用集合向 Formtastic 单选按钮添加背景图像或图像标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7281960/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com