我在我的html中使用此代码:
<a href="<%# ((bool)Eval("IsLinkToOther")) ? Eval("NewsLink") : ../News.aspx?NewsId=Eval("NewsId") %>"><%# Eval("Title") %></a>
或者这个:
<a <%if(((bool)Eval("IsLinkToOther")))
{ %>
href="<%#Eval("NewsLink")%>"
<% } %>
<%else
{%>
href="../News.aspx?NewsId=<%#Eval("NewsId")%>"
<% } %> ><%# Eval("Title") %></a>
但它不起作用,我如何使用它们,请帮助,谢谢......
答案 0 :(得分:1)
在客户端上呈现和解释纯HTML。 C#通常在服务器端使用(例如在aspx文件中)。
为了让它运行,您必须从支持ASP.NET的服务器(例如启用了ASP.NET的IIS)提供服务。
如果您正在寻找客户端功能,则应使用Javascript。
答案 1 :(得分:1)
您是否尝试过添加
runat="server"
属性为HTML标记?
答案 2 :(得分:0)
除非绝对必要,否则不要这样做 。将表示层与代码隐藏混合起来是一个非常糟糕的习惯。
在我看来,正确的方法是利用你使用asp.net的事实。
Page.aspx
<asp:HyperLink ID="myLink" NavigateUrl="" runat="server" />
Page.aspx.cs
myLink.NavigateUrl = SomeClass.IsLinkToOther ? SomeClass.NewsLink : "~/News.aspx?NewsId=" + SomeClass.NewsId;