我在 Rails 中构建的表单中有以下行:
<%= text_field_tag "new_receipt[]", nil -%>
<%= text_field_tag "new_receipt[]", nil -%>
这会产生以下 HTML:
<input type="text" name="new_receipt[]" id="new_receipt_">
<input type="text" name="new_receipt[]" id="new_receipt_">
问题是这两个盒子的 id 是相同的。让 Rails 创建唯一 ID 的最佳方法是什么?
我可以做到
<%= text_field_tag "new_receipt[]", nil, id: "new_receipt_1" -%>
<%= text_field_tag "new_receipt[]", nil, id: "new_receipt_2" -%>
但我想知道是否有更自动化的方法。
最佳答案
您可以为 text_field_tag
提供第三个参数助手:
text_field_tag 'new_receipt[]', nil, id: 'some_html_id'
text_field_tag 'new_receipt[]', nil, id: 'some_other_html_id'
除非您尊重 HTML 表单中名称的唯一性,否则不存在“自动”方法。
关于ruby-on-rails - 在 Rails 中创建同名表单元素时的非唯一 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32573664/