【问题标题】:How can I add an ID to an option inside a grouped_collection_select如何将 ID 添加到 grouped_collection_select 中的选项
【发布时间】:2026-01-11 20:20:07
【问题描述】:

我目前有一个多选框,可将房间与其各自的建筑物分组。

一切都很好,除了我想为每个选项添加一个 ID。

我该怎么做?

表格

<div class="form-group">
    <%= f.grouped_collection_select(:room_ids, Building.order('name ASC'), :rooms, :name, :id, :name, {include_blank: false}, {multiple: true, size: 10, :class => "form-control"}) %>
</div>

HTML

<select multiple="multiple" size="10" class="form-control" name="key[room_ids][]" id="key_room_ids" data-parsley-multiple="key[room_ids][]" data-parsley-id="5221">
  <optgroup label="Accounting Library">

    ###Is their a way to add an ID to this so I can manipulate it with javascript?
    <option value="142">105</option>
    <option value="143">105A</option>

  </optgroup>
  <optgroup label="Ahmanson Center">
    <option value="721">fad</option>
    <option selected="selected" value="144">105B</option>
  </optgroup>
</select>

【问题讨论】:

    标签: html ruby-on-rails ruby multi-select grouped-collection-select


    【解决方案1】:

    我不相信有任何方法可以使用grouped_collection_select 为每个选项添加一个 id,但是您可以使用 jQuery 轻松选择一个选项。例如,要选择 value = '721' 的选项,请使用以下选择器:

    $('#key_room_ids option[value="721"]')
    

    【讨论】: