【问题标题】:how to use check box with additional textbox如何使用带有附加文本框的复选框
【发布时间】:2014-05-28 12:06:07
【问题描述】:

我的表单中有多个复选框,效果很好。我需要提供更多选项来添加 像四个 chkbox 然后一个与它们相关的文本字段

我的模型看起来像

PaymentGateway.rb

has_many :payment_rfps

has_many :rfps, :through => :payment_rfps

class PaymentRfp

attr_accessible :payment_gateway_id,:rfp_id

belongs_to :payment_gateway

belongs_to :rfp 结束

rfp.rb

has_many :payment_rfps

has_many :payment_gateways, :through => :payment_rfps

我的观点

    <div class = "lft_cms" ><b>Payment Gateways</b>
     <div class="field">
     <%= hidden_field_tag "rfp[ payment_gateway_ids][]", nil %>
       <% PaymentGateway.all.each do |payment_gateway| %>
         <%= check_box_tag "rfp[payment_gateway_ids][]",payment_gateway.id, @rfp.payment_gateway_ids.include?(payment_gateway.id), :id => dom_id(payment_gateway) %>
          <%= label_tag dom_id(payment_gateway), payment_gateway.name %><br>
<% end %>

   </div>

如何添加一个文本字段以提供额外的填充选项 任何帮助表示赞赏。谢谢

【问题讨论】:

  • 将所有额外的东西添加到您的视图中,但将它们全部放在隐藏的 div 中。然后在激活相应控件时使用 javascript 取消隐藏该 div。

标签: ruby-on-rails ruby ruby-on-rails-3 activerecord


【解决方案1】:

首先,PaymentGateway.all 是个坏主意。这不应该出现在视图中,而是从控制器加载到实例变量中。请改变它。

一种方法是定义一个属性,让我们说'additional_info':

<% PaymentGateway.all.each do |pg| %>
  <%= check_box_tag ..., onclick: "$('#{pg}_info').show(); $('#{pg}_info').siblings().hide();" %>
  ...
<% end %>

<div class="additional_infos">
  <%= f.input :gateway1_info, label: "Gateway" ... %>
</div>

【讨论】:

  • 有些我怎么不明白这个..我有多模型表格!!如何添加新的文本值,你能详细说明你的答案!!
猜你喜欢
  • 1970-01-01
  • 2019-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-26
  • 2018-12-26
  • 2014-07-20
  • 1970-01-01
相关资源
最近更新 更多