簡體   English   中英

如何在三元運算符中插入超鏈接

[英]How to insert a hyperlink inside a ternary operator

我在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>

在上面的代碼中,如果狀態為“ A”,則需要插入超鏈接( <a href='<%# Eval("Status", "Questions/{0}.aspx") %>'>'<%# Eval("Status") %>'</a> )代替“ Absent ”。

這是我的輸出:

在此處輸入圖片說明

我怎樣才能做到這一點? 任何建議將是有益的。 謝謝。

更新#1

我只需要缺席的鏈接,就目前而言,我只是將其顯示為純文本。

在此處輸入圖片說明

嘗試這個:

<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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM