0

我已经使用 rails select 标签在我的应用程序中实现了多选字段

<%= f.select(:tag, ['Phone', 'Email','Website','Address', 'Occupation'], {},  :id=>"multiple",:class=>"select2", :multiple=>"multiple" ,:style=>"width:200px" ) %>

我面临的问题是该字段返回的值总是包含一些不需要的连字符和引号。例如,如果我从多选菜单中选择“电话”和“电子邮件”,它返回的值是这样的 ---- - '' - Phone - Email

为什么会发生这种情况?除非我能解决它,否则我不能继续前进,任何线索?

我添加了一个 Jscript 以在视图部分中提供平铺标签字段的外观

  <script>
    $('.select2').select2({ placeholder : '' });
 </script>

当我删除上面给定的脚本时,问题不会发生

4

2 回答 2

2

我想,它应该写成如下:

<%= f.select :tag, options_for_select(["Phone", "Email", "Website", "Address", "Occupation"]), :id=>"multiple",:class=>"select2", :multiple=>"multiple" ,:style=>"width:200px" %>

编辑: 试试下面的选项,它可能对你有用:

<%= f.select(:tag,  %w[Phone Email Website Address Occupation], {},  :id=>"multiple",:class=>"select2", :multiple=>"multiple" ,:style=>"width:200px" ) %>

另请参阅http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#M001624

于 2013-05-23T05:37:33.963 回答
1

可以这样做str.gsub!(/\'/, ''),然后str.gsub!(/-/, ''),虽然这可能不是一个好主意。

于 2013-05-23T05:12:21.037 回答