Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/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 jqGrid列排序问题_Javascript_Jquery_Sorting_Jqgrid - Fatal编程技术网

Javascript jqGrid列排序问题

Javascript jqGrid列排序问题,javascript,jquery,sorting,jqgrid,Javascript,Jquery,Sorting,Jqgrid,我有一个jqGrid,它正确地显示表中的数据,并在gridComplete上显示。加载表时,它会对每行特定表单元格中的一些图标应用一些单击功能。当表最初加载时,所有函数都正常工作,但当我单击列标题并按asc或desc顺序对列排序时,表对行进行排序,然后单击函数不再工作。以前有人使用jqGrid遇到过这个问题吗?我对表使用分页,当我转到下一页时,单击函数再次工作,直到我对列排序为止。任何帮助都将不胜感激 *我之前忘了提到,每一行都有一个子网格,当单击行开头的箭头图标时,该子网格将被折叠并展开。解决

我有一个jqGrid,它正确地显示表中的数据,并在gridComplete上显示。加载表时,它会对每行特定表单元格中的一些图标应用一些单击功能。当表最初加载时,所有函数都正常工作,但当我单击列标题并按asc或desc顺序对列排序时,表对行进行排序,然后单击函数不再工作。以前有人使用jqGrid遇到过这个问题吗?我对表使用分页,当我转到下一页时,单击函数再次工作,直到我对列排序为止。任何帮助都将不胜感激


*我之前忘了提到,每一行都有一个子网格,当单击行开头的箭头图标时,该子网格将被折叠并展开。

解决了这个问题。创建表时,我添加了一个小div元素,该元素隐藏在主表div元素的底部,该元素保存所有数据。小div上下滑动,其中包含设置选项。对表进行排序时,jqgrid似乎对表进行排序,并将其放置在主表内部的div中。因为它可能没有指定将排序后的数据放回哪个div,所以它将它放在两个div元素中。当我对数据进行排序并查看较小的div时,排序也在小div中重新创建了表。因此,我最终得到了两个表,我的原始表和小div中的新表。这打乱了我的java脚本,因为引用都在那一点上。因此,我的解决方案是在排序时删除小div,然后在排序完成后重新创建小div,这样排序功能就不会混淆。还有,Zikes,gridComplete函数并没有为我运行排序。我在gridComplete函数中放了一条alert语句,它会显示表最初加载的时间,但在对列进行排序时,它不会显示。我把警报放在函数的最开始,所以我知道它没有运行。您正在查看的文档不正确,或者我有某种设置,使gridComplete函数无法在sort上运行。感谢您的输入。

根据文档,gridComplete事件也应该在排序后触发,因此我们需要查看代码来诊断问题。Zikes,如果您的数据类型设置为json或xml,gridComplete函数将再次运行,但我手动将数据类型设置为local,因此我只对当前数据集进行排序,而不是进行新的服务器调用并对服务器端进行排序。我只在与寻呼机交互时将数据类型更改为json。根据它的文档,它将在排序和分页后独立于数据类型参数触发。请发布您的代码或相关子集,以便我们可以帮助您找出问题所在。