[英]Sorting selectbox options from database
我正在尝试按字母升序对我的选择框选项进行排序。 (从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;
}
}
}
提前致谢
由于您正在使用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查询生成器的更多信息,您可以访问laravel文档: https ://laravel.com/docs/5.3/queries。
我希望这能解决您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.