繁体   English   中英

对数据库中的选择框选项进行排序

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM