HTML选择中的排序选项

时间:2014-05-28 09:32:41

标签: javascript jquery html

有这样的情况:

<select id="trollSelect">
    <option value="PL">Polish Troll</option>
    <option value="EN">English Troll</option>
    <option value="JP">Japanese Troll</option>
    [...] //more options created dynamically
</select>

Option valuesOption textsSelect中未排序。是否可以按valuetext按字母顺序对JQuery或Javascript中的此选项进行排序?

结果应该是这样的:

<select id="trollSelect">
    <option value="EN">English Troll</option>
    <option value="JP">Japanese Troll</option>
    <option value="PL">Polish Troll</option>
    [...] //more options created dynamically
</select>

1 个答案:

答案 0 :(得分:4)

此代码应该这样做。我已经根据它们的值对它们进行了排序,但这也可以用于根据文本进行排序。

$(document).ready(function() {
    var opt = $("#trollSelect option").sort(function (a,b) { return a.value.toUpperCase().localeCompare(b.value.toUpperCase()) });
    $("#trollSelect").append(opt);
});

此处为同一

fiddle