Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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 如何在Ext Js 6.5.2中对网格标题列菜单中的“列”进行排序_Javascript_Sorting_Extjs_Grid_Extjs Grid - Fatal编程技术网

Javascript 如何在Ext Js 6.5.2中对网格标题列菜单中的“列”进行排序

Javascript 如何在Ext Js 6.5.2中对网格标题列菜单中的“列”进行排序,javascript,sorting,extjs,grid,extjs-grid,Javascript,Sorting,Extjs,Grid,Extjs Grid,目前我正在使用ExtJS6.5.2。。我面临着对网格列菜单项进行排序的问题 我想对列列表进行排序,但请记住,我不想对列标题进行排序。 此图像可能会让您清楚地看到,我只想对菜单列表进行排序,但它不应影响我的网格标题顺序。仅对红色列表进行排序,而不对绿色列表进行排序。 *注:我不需要任何基于数据的排序 您可以通过使用事件来实现这一点 代码段: 希望这对你有帮助/指导。< / P>请考虑提供更多的信息。没有代码示例。您如何绑定数据等?在extJS中,数据像在普通对象中一样存储,因此您需要将问题指定给

目前我正在使用ExtJS6.5.2。。我面临着对网格列菜单项进行排序的问题

我想对列列表进行排序,但请记住,我不想对列标题进行排序。 此图像可能会让您清楚地看到,我只想对菜单列表进行排序,但它不应影响我的网格标题顺序。仅对红色列表进行排序,而不对绿色列表进行排序。


*注:我不需要任何基于数据的排序

您可以通过使用事件来实现这一点

代码段:


希望这对你有帮助/指导。< / P>请考虑提供更多的信息。没有代码示例。您如何绑定数据等?在extJS中,数据像在普通对象中一样存储,因此您需要将问题指定给该问题,而不是一般的extJS。谢谢Rohit。。这很有帮助,但却给我带来了一个严重的问题。一旦网格列菜单被排序,下一次如果我尝试使用拖放重新定位网格列。这是一个ExtJS脚本错误。例如,在上面的图片中,我想将placeemployeeid和employeename相互替换。执行此操作时,我收到ExtJS脚本错误并终止我的应用程序。你能帮我吗?这是你的小提琴。我试图通过拖放来交换用户名和数字列的位置。另外,我正在使用Mozilla浏览器。
listeners: {
    headermenucreate: function (grid, menu, headerCt, eOpts) {
        //Fired immediately after the column header menu is created
        var columnItems = menu.down('[itemId=columnItem]'),
            menuItems = columnItems.menu.items.items;
        //sorting by column's "text" in ascending order
        menuItems.sort(function (a, b) {
            var nameA = a.text.toLowerCase(),
                nameB = b.text.toLowerCase()
            if (nameA < nameB) //sort string ascending
                return -1
            if (nameA > nameB)
                return 1
            return 0 //default return value (no sorting)
        });

    }
}