我有一组嵌套的中继器,其结构如下:
Repeater A
Repeater A-1
Repeater A-2
Repeater A-3
Repeater B
Repeater B-1
Repeater B-2
Repeater B-3
我想在运行时动态地重新排列父中继器中的子中继器。例如,根据用户配置,我可能希望将Repeater A的子项的顺序更改为2,3,1。我可以选择服务器或客户端解决方案。
发布于 2013-05-21 13:52:11
我支持客户端的jquery方法。这将避免任何回发,这是如此90年代的日子。如果您能够将中继器内容包装到某种容器元素中,并为它们提供Id属性,则可以编写一个可重用的JQ函数,该函数将为您进行重新排列。
Asp.net代码:(您已经有了类似的代码)
<asp:Repeater DataSource="<%#source%>" runat="server">
<ItemTemplate>
<div id="containerA">
<asp:Repeater DataSource="<%#Container.DataItem%>" runat="server">
<ItemTemplate>
<div id="A-<%# Bind("Count") %>"><%#SomeEvaluatedMethod()%></td>
</ItemTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
生成的HTML:
<div id="containerA">
<div id="A1">some text</div>
<div id="A2">some text</div>
<div id="A3">some text</div>
</div>
要通过Jquery安排div:
为了避免重复发明轮子,请看一下这些示例,这里有几个有效的示例。选择对你和你的项目最有意义的东西。
https://stackoverflow.com/questions/16662839
复制相似问题