Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对数据库中的selectbox选项进行排序_Javascript_Php_Html_Laravel - Fatal编程技术网

Javascript 对数据库中的selectbox选项进行排序

Javascript 对数据库中的selectbox选项进行排序,javascript,php,html,laravel,Javascript,Php,Html,Laravel,我正在尝试按字母升序排列selectbox选项。(从A开始,一直到Z) 我试着使用在另一个问题中找到的分类器,但我似乎无法让它在我所有的选择框上工作。我尝试使用document.getElementsByTagName()调用SelectBox,但这似乎也不起作用 这是我尝试使用的函数: function sortlist() { var selectOptions = document.getElementsByClassName("sortList");

我正在尝试按字母升序排列selectbox选项。(从A开始,一直到Z)

我试着使用在另一个问题中找到的分类器,但我似乎无法让它在我所有的选择框上工作。我尝试使用document.getElementsByTagName()调用SelectBox,但这似乎也不起作用

这是我尝试使用的函数:

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;
                }
            }
        }
函数排序列表(){
var selectOptions=document.getElementsByClassName(“sortList”);
var selectoptions text=新数组();
console.log(选择选项);
对于(i=2;i

提前感谢

因为您使用的是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文档,网址:


我希望这能解决您的问题。

为什么不在开始填写时对数据进行排序?我想您的意思与@nusje2000相同?既然他的回答更清楚,我会接受他的,不过还是要谢谢你的建议