我在asp.net中创建了一个新项目,我正努力在三元运算符中插入超链接。
以下是代码段:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" ItemStyle-Width="50" />
<asp:BoundField DataField="Name" HeaderText="Name" ItemStyle-Width="150" />
<asp:TemplateField HeaderText="Status" ItemStyle-Width="100">
<ItemTemplate>
<a href='<%# Eval("Status", "Questions/{0}.aspx") %>'>'<%# Eval("Status") %>'</a>
<%# Eval("Status").ToString() == "A" ? "Absent" : "Present" %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
在上面的代码中,如果状态为&#34; A&#34;,我需要在&#34; <a href='<%# Eval("Status", "Questions/{0}.aspx") %>'>'<%# Eval("Status") %>'</a>
&#34的位置插入超链接(Absent
) ;。
这是我的输出:
我该怎么做?任何建议都是健康的。谢谢。
更新#1 :
我只需要缺席作为链接,对于现在,我只是将其显示为纯文本。
答案 0 :(得分:2)
试试这个:
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='Questions/Absent.aspx'
Text='<%# Eval("Status") %>' Visible='<%# Convert.ToBoolean(Eval("Status").ToString() == "A" ? "True" : "False")) %>'>
</asp:HyperLink>
<asp:Label ID="Label1" runat="server" Text='Present' Visible='<%# Convert.ToBoolean((Eval("Status").ToString() == "A" ? "False" : "True")) %>'>
</asp:Label>
</ItemTemplate>