我正在尝试使用 select2-rails gem 实现选择 2,但我不熟悉 jQuery 或 rails。
我基本上试图从这个网站复制占位符示例并根据我的需要进行调整:
http://rails-select2-example.herokuapp.com/
我有一个字段列出了活动的表演者。最初我只有一个简单的文本字段:performer。但我想用基于我的用户 profile_name 的查找替换它,然后我可以将其分配给 :performer 字段。
所以我有这样的事情:
<%= select_tag "performer", options_from_collection_for_select(@user, "id", "profile_name"), include_blank: true, id: "performer", data: { placeholder: "Choose a performer" } %>
紧随其后的是:
<script type="text/javascript"> $(document).ready(function() {
$('select#performer').select2({
placeholder: "Choose a performer",
allowClear: true
});
});
</script>
哪个有效,并为我提供了用户的下拉列表。但我不确定如何将此信息传递给 :performer 字段。这可能真的很简单,以至于每当我搜索 simple2 时,似乎都没有提到您如何将它传递给该字段。请帮忙!
更新1:
我可以使用以下方法提交它,但它变成了一个简单的选择框,而不是一个 select2 自动完成框。
<%= f.select_tag "performer", options_from_collection_for_select(@user,
"profile_name", "profile_name"), include_blank: true, id: "performer", data:
{ placeholder: "Choose a performer" } %>
更新2:
让它工作,但仍然无法显示占位符。
<%= f.select :performer, options_from_collection_for_select(@user,
:profile_name,:profile_name), {}, include_blank: true,
id: "performer", data: { placeholder: "Choose a performer" } %>