我正在尝试按字母顺序升序排序我的选择框选项。 (从A开始,一直到Z)
我尝试使用我在另一个问题中找到的分拣机,但我似乎无法让它在我的所有选择框上工作。我尝试使用document.getElementsByTagName()来调用选择框,但这似乎也不起作用。
这是我正在尝试使用的功能:
function sortlist() {
var selectOptions = document.getElementsByClassName("sortList");
var selectOptionsTexts = new Array();
console.log(selectOptions);
for (i = 2; i < selectOptions.length; i++) {
selectOptionsTexts[i - 2] =
selectOptions.options[i].text.toUpperCase() + "," +
selectOptions.options[i].text + "," +
selectOptions.options[i].value + "," +
selectOptions.options[i].selected;
}
selectOptionsTexts.sort();
for (i = 2; i < selectOptions.length; i++) {
var parts = selectOptionsTexts[i - 2].split(',');
selectOptions.options[i].text = parts[1];
selectOptions.options[i].value = parts[2];
if (parts[3] == "true") {
selectOptions.options[i].selected = true;
} else {
selectOptions.options[i].selected = false;
}
}
}
提前致谢
答案 0 :(得分:2)
由于您正在使用laravel并从标题中获取数据库中的数据,因此只需从数据库中选择它就可以按字母顺序对其进行排序。您可以使用Laravel查询生成器或默认的sql方法。
Laravel查询:
DB::table('your_table')->orderBy('col_name', 'asc'); //asc = ascending, desc = descending
SQL查询:
SELECT * FROM your_table ORDER BY column_name ASC //ASC = ascending, DESC = descending
有关laravel查询构建器的更多信息,您可以访问:https://laravel.com/docs/5.3/queries上的laravel文档。
我希望这能解决你的问题。