我的 ASP.NET 应用程序中有一个 UpdatePanel 控件(实际上有几个,但这不是问题)。
<asp:UpdatePanel ID="UpdatePanelDetail" runat="server" UpdateMode="Conditional">
<ContentTemplate>
...More code here
在面板内部,存在一个asp:Table
对象:
<asp:Table ID="tblGIFs" runat="server"></asp:table>
该表是通过代码隐藏中的一些代码以编程方式生成的:
TableRow htr = new TableRow();
TableCell htc = new TableCell();
...<snip>
tblGIFs.Rows.Add(htr)
这一切都很好,除了在其中一个单元格中我试图添加一个按钮(带有图像):
htc3.Text = "<input ID=\""+ii.Value+"\" OnClick = \"btnGIFSearch(this)\" type=\"image\" value=\"/Image/Fiu.png\" />";
单击此图像时,可以onclick
正常触发,但会刷新整个图像UpdatePanel
(因此会asp:Table
消失)。
如果我使用 a type="button"
,它完全可以正常工作,并且刷新/丢失表格中的内容没有问题。
我已经在我从代码隐藏中触摸表格的每个位置都运行了带有断点的页面,但无济于事,我真的看不到任何可能导致UpdatePanel
以编程方式清除的内容。
任何人都看到这些标签/控件的类似行为以及解决方案的任何想法?一种解决方法显然是使用type=button
按钮并对其进行样式设置,但如果我能正确行事,我宁愿不这样做type=image
。