1

我有一张带按钮的桌子。它的问题是,当您单击一个按钮时,会绘制一个新表格。绘制新表格时,该按钮仍然是可点击的,如果您再次按下它,页面将给出关于具有相同 ID 的内容持有者的错误。整个表都在更新面板中,我认为更新面板会在回发后发布其中的所有内容。但不幸的是,事实并非如此。(表格在每次回发时重新绘制)

我现在的想法是处理被点击的按钮,这样 burron 就不能被点击两次。但是,如果我现在单击一个按钮,然后单击另一行中的另一个按钮,那么第一个按钮仍然被释放......

您是否知道另一种方法来执行此操作或强制更新面板清除所有按钮?

protected void Page_Load(object sender, EventArgs e)
        {
            getFilterValues();
            getItemsOutOfviewState();
            drawTableOne();
        }
private void drawTableTwoClick(object sender, CommandEventArgs e)
        {
            ImageButton test = (ImageButton)(sender);
            test.ImageUrl = "~/img/minus.gif";
            test.Dispose();
            drawTableTwo(siteAlias, rowNumber);
        }

<asp:UpdatePanel runat="server" ID="up_tableMain" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:Table runat="server" ID="tbl_main" BorderStyle="Solid" BorderWidth="2" GridLines="Both" BackColor="White" class="tablesorter">
</ContentTemplate>
</asp:UpdatePanel>
4

1 回答 1

1

这是视图状态的问题,因为当您处理按钮时,它会在服务器端失去其引用,尽管您可以通过 make 来解决 Button.Visible=false;

然后在可见的真实条件下执行特定任务,或者您可以在特定事件中再次使按钮可见。同样可以通过在服务器端代码(c#)中禁用它并检查它的冗余。

问候

于 2013-05-08T08:05:33.760 回答