从下拉列表中排序选择

时间:2013-10-22 10:40:31

标签: codeigniter-2

我想从多选下拉列表中创建一个有序列表,问题是html提供的select选项输入只是线性选择的订单值,但我希望它按照我选择它们的顺序排序。所以我决定使用一些JS来做这个技巧但是能够破解。这是代码。请帮忙!

    <script language="'javascript'">
  function showselection()
  {
    var frm = document.testing
    var opt = frm.testsel

    var numofoptions = opt.length
    var selValue = new Array

    var j = 0
    for (i=0; i<numofoptions; i++)
    {
      if (opt[i].selected === true)
      {
        selValue[j] = opt[i].value
        j++
      }
    }

    selValue = selValue.join("+")

    document.getElementById("txtEditions").innerHTML = selValue
  }
</script>

<form method=POST name='testing'>
  <select name='testsel' multiple onchange='showselection()'>
    <option value="one">one</option>
    <option value="two">two</option>
    <option value="three">three</option>
  </select>
  <textarea id="txtEditions"></textarea>
</form>

如何确保选择的顺序已保存,而不是来自下拉列表来源的订单

1 个答案:

答案 0 :(得分:0)

Codeigniter有form_dropdown / form_multiselect的表单帮助器,这允许您将数组传递给辅助函数以创建html。您可以在使用数组排序函数(例如ksortasort将数组解析为此函数之前对数组进行排序,具体取决于您的数据。

抱歉,我无法提供更多帮助,因为我不清楚你到底需要做什么。如果您真的想保存订单,那么这意味着以某种方式将其保存在数据库结构中。