我想从多选下拉列表中创建一个有序列表,问题是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>
如何确保选择的顺序已保存,而不是来自下拉列表来源的订单
答案 0 :(得分:0)
Codeigniter有form_dropdown / form_multiselect的表单帮助器,这允许您将数组传递给辅助函数以创建html。您可以在使用数组排序函数(例如ksort或asort将数组解析为此函数之前对数组进行排序,具体取决于您的数据。
抱歉,我无法提供更多帮助,因为我不清楚你到底需要做什么。如果您真的想保存订单,那么这意味着以某种方式将其保存在数据库结构中。