有一种快速的方法来对选择元素的项目进行排序吗?或者我不得不求助于编写javascript?
请任何想法.
Matty.. 64
这样就可以了.只需将您的选择元素传递给它:document.getElementById('lstALL')
当您需要对列表进行排序时.
function sortSelect(selElem) { var tmpAry = new Array(); for (var i=0;i0) { selElem.options[0] = null; } for (var i=0;i
这是一个很好的解决方案,但它将摆脱插入选项的任何属性...而对类似问题的这个其他答案将完成工作并保留属性:http://stackoverflow.com/questions/667010/sorting-dropdown -list-使用JavaScript的/ 667323#667323 (3认同)
小智.. 40
这个解决方案对我使用jquery工作非常好,以为我在这里交叉引用它,因为我在另一个之前找到了这个页面.其他人可能会这样做.
$("#id").html($("#id option").sort(function (a, b) { return a.text == b.text ? 0 : a.text < b.text ? -1 : 1 }))来自使用Javascript的排序下拉列表
1> Matty..:这样就可以了.只需将您的选择元素传递给它:
document.getElementById('lstALL')
当您需要对列表进行排序时.function sortSelect(selElem) { var tmpAry = new Array(); for (var i=0;i0) { selElem.options[0] = null; } for (var i=0;i
这是一个很好的解决方案,但它将摆脱插入选项的任何属性...而对类似问题的这个其他答案将完成工作并保留属性:http://stackoverflow.com/questions/667010/sorting-dropdown -list-使用JavaScript的/ 667323#667323
2> 小智..:这个解决方案对我使用jquery工作非常好,以为我在这里交叉引用它,因为我在另一个之前找到了这个页面.其他人可能会这样做.
$("#id").html($("#id option").sort(function (a, b) { return a.text == b.text ? 0 : a.text < b.text ? -1 : 1 }))来自使用Javascript的排序下拉列表
3> Matt K..:使用Marco Lazzeri和Terre Porter提供的答案(如果此答案有用,请投票),我想出了一个稍有不同的解决方案,该解决方案使用以下方式保留选定的值(尽管可能不保留事件处理程序或附加数据)jQuery的。
// save the selected value for sorting var v = jQuery("#id").val(); // sort the options and select the value that was saved j$("#id") .html(j$("#id option").sort(function(a,b){ return a.text == b.text ? 0 : a.text < b.text ? -1 : 1;})) .val(v);