我在asp.net中使用Gridview。列以这种方式:4月,5月,6月,1月,7月,8月,9月,2月,10月,11月,12月,3月,1月,2月,3月,4月。 我想显示gridview,如下所示:
再次点击任何展开的列应该按照之前的那样折叠
有人指导我如何实现这个目标吗?
答案 0 :(得分:0)
使用jQuery。将CssClass应用于表示的每个列。它不一定是一个有效的css元素,只是一个名字。
<asp:BoundField ID="Apr" CssClass="Q1" .... />
然后,您可以使用包含链接的Q1列的标题模板。链接的click事件应该调用一个jQuery,该jQuery调用一个方法来为匹配类的元素切换hide()
和show()
。这将是一个功能性的想法:
function ToggleColumn(colID)
{
var elements = $('.' + col);
if (elements[0].is(":visible"))
{
elements.hide();
} else {
elements.show();
}
return false;
}
调用它的链接是:
<asp:LinkButton ID="lnkQ1" OnClientClick="return ToggleColumn('Q1');" ... />
显然需要调整以适应您的特定要求,并且需要在可能发生故障的地方进行一些空检查。如果你把它当作伪代码,它应该让你朝着正确的方向前进。