我的项目使用C#在Asp.Net Webforms中。
在我的一个网页上,我想要两张桌子。一个是汇总表,另一个是汇总的更详细分类。当用户单击摘要表的其中一行时,我希望相应的细分行显示在细分表中。
这些表可以包含60到500行之间的任何内容。
我想到了两种可能的方法,我不确定哪种方法最好,或者是否有另一种更好的实现方法:
1)当用户点击第一个表中的一个行时,会发生回发事件,并从后面的代码中加载第二个表的数据。
2)第一次加载网页时,两个表都填充了所有可能的数据,但第二个表中的所有行都有“ display:none; ” CSS属性。当用户单击摘要行时,将使用JavaScript更改相应细分行的CSS。
答案 0 :(得分:1)
我会先考虑你的第一个想法,或者
通过AJAX请求加载第二个表的数据,只返回JSON中的行数据(或者甚至是表中的HTML)
使用UpdatePanel
如果用户只需要查看数据,我会选择前者,但如果他们需要以某种方式编辑数据,我可能会选择后者(尽管我知道UpdatePanels实际上是一个在异步服装中完全回发,我觉得它们的使用可以使UI更流畅。)
答案 1 :(得分:0)
当用户点击摘要表中的一行以返回第二个表的数据时,您也可以进行AJAX调用。
答案 2 :(得分:0)
第二种方式没办法,加载所有数据然后隐藏显示不是一个好主意,它会很慢,如果你添加更多功能,它只会妨碍你...
我推荐这两种方法:
1)带分页的第一张表
点击行触发ajax调用页面方法
页面方法返回第二个表
在这里,您可以看到如何:
http://encosia.com/2008/02/05/boost-aspnet-performance-with-deferred-content-loading/
2)使用uframe
http://labs.omaralzabir.com/UFrame2005/
欢呼声