<div class="field">
<%= f.label :category %><br />
<%= select_tag "category", options_from_collection_for_select(@categories, "id", "name"), :prompt => "Select something" %>
<% if not @category_id.nil? %>
<script>
$("#category option").each(function(){
if ( this.value == <%= @category_id %> )
this.selected = true;
});
</script>
<% end %>
</div>
我想让类别<select>
标记具有正确的值(@category_id
)。
我尝试将一些脚本添加到category.js.coffee中,但我发现我无法将@category_id传递给coffee文件。所以脚本是内联的。
我不知道有什么其他方法可以解决这个问题。 我认为我的代码很难看。
任何人都可以对我的问题有任何其他解决方案。 如果你是我,你将使用哪种方法。 THX。
此致 Rails新手
答案 0 :(得分:0)
您应该能够在没有javascript的情况下预先选择其中一个选项。试试options_from_collection_for_select(@categories, "id", "name", @category_id)
。