这是我需要改进的代码的一部分:
<table class="table-striped table-bordered table-condensed table-hover">
<%= f.fields_for :goals do |goal| %>
<%= goal.hidden_field :copm_id, value: goal.object.copm_id %>
<tr>
<td>
<label for='category'> Category/Subcategory</label>
<%= goal.select :category_id, grouped_options_for_select(copm_category_list, goal.object.category_id), include_blank: true, id: 'category' %>
</td>
<td>
<label>Goal Description</label>
<%= goal.text_area :description, rows: 2, cols: 70 %>
</td>
</tr>
<% end %>
</table>
在浏览器中检查页面时,更准确地说是下拉框“Category / Subcatgory”,我注意到了标签
<lablel for="category">
和标签
<select name="copm[goals_attributes][0][category_id]" id="copm_goals_attributes_0_category_id">
<option value=""></option>
<optgroup label="Self Care">
<option value="1">Personal care</option>
<option value="2">Functional mobility</option>
<option value="3">Community management</option>
</optgroup>
<optgroup label="Productivity">
<option value="4">Paid or unpaid work</option>
<option value="5">Household management</option>
<option value="6">School and/or play</option>
</optgroup>
<optgroup label="Leisure">
<option value="7">Quiet recreation</option>
<option value="8">Active recreation</option>
<option value="9">Socialization</option>
</optgroup>
</select>
是不同的标签。
我需要:
<lablel for="copm[goals_attributes][0][category_id]">
对于第二行,和“0”相应地增加,依此类推,或者,无论行如何,下面的“id”都会变为常量值,如下所示:
<select name="copm[goals_attributes][0][category_id]" id="category">
任何线索如何解决这个问题将非常受欢迎,因为对于某些屏幕阅读器来说,正确获取与选择器相关联的标签非常重要。
答案 0 :(得分:1)
您可以使用以下内容:
:description
同样适用于label
等。有关copyURLToFile
方法的一些文档:http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-label
答案 1 :(得分:1)
您是否尝试使用label
form_builder辅助方法rails
而不是手动设置label
的标记?
所以,而不是:
<label for='category'> Category/Subcategory</label>
尝试使用:
<%= goal.label :category_id, 'Category/Subcategory' %>
看看它是否有帮助。
有关详细信息,请参阅FormBuilder#label。