【问题标题】:Rails best_in_place gem while clicking on the label name在单击标签名称时 Rails best_in_place gem
【发布时间】:2012-12-16 06:55:37
【问题描述】:

我正在使用最好的宝石 - 这很棒。 唯一的事情是我希望用户不仅能够单击最佳位置元素以对其进行编辑,而且还能够单击标签。 可以说我有这个最好的元素:

<b>Open Hours</b>
<%= best_in_place @provider, :open_hours, :type => :select, :collection => Provider::PROVIDERS_HOURS %>

我希望能够单击“营业时间”以打开编辑元素。有可能吗?

谢谢

【问题讨论】:

    标签: ruby-on-rails best-in-place


    【解决方案1】:

    对于一个类的单个实例,您可以简单地

    <b id='edit-open-hours'>Open Hours</b>
    <%= best_in_place @provider, :open_hours, type: :select, collection: Provider::PROVIDERS_HOURS, activator: '#edit-open-hours' %>
    

    如果您想使用列表视图执行此操作,您需要使用 ID 使每个 id-identifier 唯一

    <b id='edit-<%= @provider.id %>'>Open Hours</b>
    <%= best_in_place @provider, :open_hours, type: :select, collection: Provider::PROVIDERS_HOURS, activator: '#edit-' + @provider.id.to_s %>
    

    【讨论】:

    • 您的回答确实成功了。非常感谢人!我对您的答案做了一个小的更新,缺少 '#' 。激活器:'#edit-' + @provider.id.to_s
    【解决方案2】:

    这很有帮助,但有一个小修正:您必须在激活器 DOM 元素前加上相关符号(# 代表 id,. 代表类)。

    所以第二个例子是

    <%= best_in_place @provider, :open_hours, type: :select, collection: Provider::PROVIDERS_HOURS, activator: '#edit-' + @provider.id.to_s %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-06
      • 2012-11-15
      • 1970-01-01
      • 2014-06-23
      • 2012-11-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多