我在C#中有一个中继器,它使用ID生成唯一的li标签并具有其他一些元素。多个Eval在一个页面中
<li id="<%# Eval("myID") %>">
<a id="<%# Eval("myID") %>"></a>
</li>
我得到VS标记错误,那是另一个对象已存在与ID <%#的eval( “身份识别码”)%>'
为什么我不能用<%#的eval( “myID”)%>在页面中多次?它编译和运行,只是它被标记为警告..
这是C#4.0,asp.net
我在C#中有一个中继器,它使用ID生成唯一的li标签并具有其他一些元素。多个Eval在一个页面中
<li id="<%# Eval("myID") %>">
<a id="<%# Eval("myID") %>"></a>
</li>
我得到VS标记错误,那是另一个对象已存在与ID <%#的eval( “身份识别码”)%>'
为什么我不能用<%#的eval( “myID”)%>在页面中多次?它编译和运行,只是它被标记为警告..
这是C#4.0,asp.net
你有没有想给li
和a
相同的ID?
您可以根据需要多次使用Eval
。不过,你将这个值用作两个元素的ID,这就是VS抱怨的。
我可能会建议
<li id="li_<%# Eval("myID") %>">
<a id="a_<%# Eval("myID") %>"></a>
</li>
原因很简单,是HTML的id属性应该是在页面上独一无二的。如果您需要某些与某些文本关联的内容,则应该使用其他属性,或以不同的方式标记它们。如:
rel="<%# Eval("myId") %>"
class="<%# Eval("myId") %>"