繁体   English   中英

排序表格列并显示

[英]Sorting table columns and displaying

我正在使用JSP struts 2创建动态表管理器,后端是普通的oracle DB。

所有这些都完成了。 如果我将页面限制设置为10,则在更改页面时,仅会提取并显示下一组10行。 因此,基本上在任何时间点我的页面中都只有10行。 现在,我想向此表管理器添加按列排序功能,这将类似于excel工作表,我们可以按列的升序或降序进行排序。

我该怎么做呢 ?

我以为每次单击列时,我都会转到操作并按升序或降序获取行。

这是最佳方式还是还有其他最佳解决方案?

您以JSON对象的形式获取所有数据,并使用javascript创建表(也可以提供分页-带有逻辑)。 在javascript中创建一个创建表的函数。 现在,只要排序完成(asc或desc),就可以在该特定列上对JSON对象进行排序。 然后再次在javascript中调用“创建表”功能。 这将防止进行服务器端调用或数据库调用。 处理将在您的客户端完成,这将提高您的性能。
提示:一次性获取所有表数据,并将其传递到前端

更新:
根据'name'属性对json对象进行排序
var sortedArray = myArray.sort(function(a,b){
if (a.name < b.name)
return -1;
else if (a.name == b.name)
return 0;
else
return 1;
});

以下是您可以采取的多种方法

  1. 按顺序对DB中的数据进行排序并显示结果。 为此,您可以使用已经可用于诸如DISPLAYTAG的支杆的显示标签

2。 使用JavaScript库(例如Jquery示例TableSorter)对HTML页面上的表进行排序

3.从Db一次获取数据并将其存储在会话中,并使用java.util.Comparator对其进行排序:请参阅

如果您仅使用表格,请检查以下链接。 它是Jquery数据表插件,提供分页,选择每页最大行数和列排序。

http://www.datatables.net/examples/

好的,您有两个选择,要么使用您自己的逻辑进行分页,要么尝试使用struts2-jquery-grid-plugins

此链接是如何在您的应用程序中使用网格的完整文档。

http://code.google.com/p/struts2-jquery/wiki/GridTag

这是struts2-grid-plugin的工作演示

http://struts.jgeppert.com/struts2-jquery-grid-showcase/index.action

以及您可以在此处http://code.google.com/p/struts2-jquery/downloads/list下载war文件或源代码找到struts2-jquery-mobile-showcase-3.5.1.war

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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