下面的代码是我一直在努力演示如何从asp:gridview
创建弹出窗口的示例。
它工作正常,但由于在页面加载时设置了<DIV>
,我总是得到gridview
的第一个实例。
我想弄清楚如何在DIV中获取所选值。我假设我需要以某种方式将值传递给DIV,但试图在没有代码的情况下完成此任务。
任何建议都将不胜感激。
提前谢谢。
<asp:GridView runat="server" id="GridView1" DataSourceID="SqlDataSource4" AutoGenerateColumns="False" BorderColor="White" GridLines="None" HorizontalAlign="Left">
<Columns>
<asp:templatefield HeaderText="Metrics:" SortExpression="Column Name">
<ItemTemplate>
<a href="javascript:void(0)" onclick="document.getElementById('light').style.display='block';document.getElementById('fade').style.display='block'">
<asp:Label runat="server" Text='<%# Eval("[Column Name]") %>' id="Label1" ToolTip="Click to see detail.">
</asp:Label>
</a>
<div id="light" class="white_content">
<asp:Label runat="server" Text='<%# Eval("[ToolTip]") %>' id="Label2" ToolTip="Click to see detail.">
</asp:Label>
<a href="javascript:void(0)" onclick="document.getElementById('light').style.display='none';document.getElementById('fade').style.display='none'">
<br>
<br>
Exit</br></br></a></div>
<div id="fade" class="black_overlay">
</div>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Left" Font-Bold="True" Font-Underline="True" />
</asp:templatefield>
</Columns>
答案 0 :(得分:0)
自从我参与WebForms项目以来已经有一段时间了,但由于您正在模板中直接设置ID,因此ID可能会使网格混乱。
我的建议是您使用函数动态设置ID或使用Grid事件处理程序在数据绑定过程中选择ID。这样您就可以为javascript定义正确的ID。
使用CSS类选择DIV可能还有另一个优雅的解决方案。
如果有帮助,请告诉我。
谢谢! 圣拉斐尔