1

问题:是否可以从使用 collection_select 生成的下拉框中获取项目的选择顺序?

我正在以简单的形式执行以下操作:

<%= f.collection_select(:category_ids, Category.all, :id, :name, {}, html_options = {:multiple => true} ) %>

有了这个,我可以获得一组选定的类别,但是它们是按自上而下的顺序排列的(因为它们出现在列表中)。

例如,假设我有以下类别:

  1. 红色的
  2. 绿色的
  3. 蓝色的
  4. 橙子

如果我选择绿色、橙色、红色,我想得到一个 [2, 4, 1] 的返回数组,但我得到的是 [1, 2, 4] 。

我发现这篇文章提到以这种方式订购它们是 HTML 标准的东西。有没有解决的办法?

html中的选择顺序选择多个?

4

1 回答 1

0

当然,也有绕口令。使用对用户操作敏感的语言,例如 JavaScript。在这种情况下,请使用关联数组之类的数据结构,其中选择一个选项会更新相应的元素,而取消选择会使数组中的元素无效。

于 2012-11-06T07:58:06.430 回答