Repeater之超链接数据绑定
今天在调试毕业设计时用到了repeater,但在添加编辑和删除操作时遇到了问题,无法将数据绑定到url后,
我原本写成了<asp:HyperLink ID="editlink" NavigateUrl='EditFileType.aspx?id=<%#DataBinder.Eval(Container.DataItem,"Id")%>' runat="server">编辑</asp:HyperLink>
结果URL变成了: EditFileType.aspx?id=<%#DataBinder.Eval(Container.DataItem,"Id")%>
经过几翻查阅和调试,终于搞定:
<asp:HyperLink ID="editlink" NavigateUrl='<%#DataBinder.Eval(Container.DataItem,"Id","EditFileType.aspx?id={0:G}")%>' runat="server">编辑</asp:HyperLink>
<asp:Repeater ID="MyRepeater" runat="server">
<HeaderTemplate>
<table width="657" border="0" cellpadding="0" cellspacing="0" class="tablecss">
<tr>
<td height="38" colspan="5" align="center" bgcolor="#4D84D7" class="title">教学文件分类管理</td>
</tr>
<tr>
<td width="100" height="42" align="center" class="sectitle">ID</td>
<td width="200" height="35" align="center" class="sectitle"> 分类名称</td>
<td width="200" align="center" class="sectitle">修改日期</td>
<td width="60" align="center" class="sectitle">编辑</td>
<td width="60" align="center" class="sectitle">删除</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td height="33" align="center"><asp:Label Text='<%#DataBinder.Eval(Container.DataItem,"Id") %>' runat="server"></asp:Label></td>
<td align="center"><asp:Label Text='<%#DataBinder.Eval(Container.DataItem,"TypeName") %>' runat="server"></asp:Label></td>
<td align="center"><asp:Label Text='<%#DataBinder.Eval(Container.DataItem,"AddTime") %>' runat="server"></asp:Label></td>
<td align="center"><asp:HyperLink ID="editlink" NavigateUrl='<%#DataBinder.Eval(Container.DataItem,"Id","EditFileType.aspx?id={0:G}")%>' runat="server">编辑</asp:HyperLink></td>
<td align="center"><asp:HyperLink ID="delelink" NavigateUrl='<%#DataBinder.Eval(Container.DataItem,"Id","DeleFileType.aspx?id={0:G}")%>' runat="server">删除</asp:HyperLink></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
我原本写成了<asp:HyperLink ID="editlink" NavigateUrl='EditFileType.aspx?id=<%#DataBinder.Eval(Container.DataItem,"Id")%>' runat="server">编辑</asp:HyperLink>
结果URL变成了: EditFileType.aspx?id=<%#DataBinder.Eval(Container.DataItem,"Id")%>
经过几翻查阅和调试,终于搞定:
<asp:HyperLink ID="editlink" NavigateUrl='<%#DataBinder.Eval(Container.DataItem,"Id","EditFileType.aspx?id={0:G}")%>' runat="server">编辑</asp:HyperLink>
程序代码
<asp:Repeater ID="MyRepeater" runat="server">
<HeaderTemplate>
<table width="657" border="0" cellpadding="0" cellspacing="0" class="tablecss">
<tr>
<td height="38" colspan="5" align="center" bgcolor="#4D84D7" class="title">教学文件分类管理</td>
</tr>
<tr>
<td width="100" height="42" align="center" class="sectitle">ID</td>
<td width="200" height="35" align="center" class="sectitle"> 分类名称</td>
<td width="200" align="center" class="sectitle">修改日期</td>
<td width="60" align="center" class="sectitle">编辑</td>
<td width="60" align="center" class="sectitle">删除</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td height="33" align="center"><asp:Label Text='<%#DataBinder.Eval(Container.DataItem,"Id") %>' runat="server"></asp:Label></td>
<td align="center"><asp:Label Text='<%#DataBinder.Eval(Container.DataItem,"TypeName") %>' runat="server"></asp:Label></td>
<td align="center"><asp:Label Text='<%#DataBinder.Eval(Container.DataItem,"AddTime") %>' runat="server"></asp:Label></td>
<td align="center"><asp:HyperLink ID="editlink" NavigateUrl='<%#DataBinder.Eval(Container.DataItem,"Id","EditFileType.aspx?id={0:G}")%>' runat="server">编辑</asp:HyperLink></td>
<td align="center"><asp:HyperLink ID="delelink" NavigateUrl='<%#DataBinder.Eval(Container.DataItem,"Id","DeleFileType.aspx?id={0:G}")%>' runat="server">删除</asp:HyperLink></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>