gpt4 book ai didi

c# - 在计时器上刷新 Gridview 但保持扩展 div 的状态

转载 作者:太空宇宙 更新时间:2023-11-03 15:53:11 27 4
gpt4 key购买 nike

我有一个在更新面板和计时器中运行的 Gridview。它只显示主要标题和其他主要部分,然后在它下面是其余的详细信息。用户可以单击标题 div,它会为每一行使用以下 Javascript 展开/隐藏其下方的内容

<script type="text/javascript">
$(function () {
$('.requestDetails').css('display', 'none');
$('.expandResults').click(function () {
$(this).parent().children(".requestDetails").slideToggle(500);
$(this).toggleClass('slideSign');
return false;
});
});

HTML 看起来像这样

<asp:Timer runat="server" ID="ctlTimer" Enabled="false" Interval="5000" OnTick="OnTimerIntervalElapse"/>
<asp:UpdateProgress ID="UpdateProgress1" runat="server"
AssociatedUpdatePanelID="UpdatePanel1">
<ProgressTemplate>
</ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" ViewStateMode="Enabled">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ctlTimer" EventName="Tick" />
</Triggers>
<ContentTemplate><asp:GridView ID="gvTasks" runat="server" AutoGenerateColumns="False" OnRowDataBound="gvTasks_RowDataBound"
OnRowCommand="gvTasks_RowCommand"
OnRowCreated="gvTasks_RowCreated" CssClass="gvGridTasksActive">
<Columns><asp:TemplateField HeaderText="Task" SortExpression="RequestSent">
<ItemTemplate>
<div class="expandResults" id="expandResults">
<div class="title">Title stuff..
</div>
<div class="timeStamp">Timestamp stuff..
</div>
</div>

<br class="clearfloat" />
<div class="requestDetails" id="requestDetails">
<br /><hr />
Request details stuff....</div></ItemTemplate>
<EditItemTemplate>

</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

我遇到的问题是,当页面刷新时,它会用扩展的 div 扩展我的所有行。有没有一种方法可以让页面自动刷新,这样我的 c# 可以在添加新记录时重新绑定(bind)网格,但它会记住当前扩展的内容?

最佳答案

一个建议是使用带有适当参数的 iCallBack 并异步获取修改后的数据,并借助 JavaScript 在您的网格中追加/删除/修改该数据。

您可以异步获取数据并检查每一行的更改并相应地绑定(bind)新的 HTML。

发布代码会很困难

关于c# - 在计时器上刷新 Gridview 但保持扩展 div 的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24914237/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com