在一页中包含多个eval
本文关键字:eval 包含多 一页 | 更新日期: 2023-09-27 18:05:40
我在c#中有一个重复器,它生成具有id的唯一li标记和一些其他元素。
<li id="<%# Eval("myID") %>">
<a id="<%# Eval("myID") %>"></a>
</li>
我在VS中得到一个标记错误,'另一个对象已经存在,ID <%# Eval("myID") %>'
为什么不能在页面中多次使用<%# Eval("myID") %> ?它编译并运行,只是它被标记为警告…
是c# 4.0, asp.net
原因很简单,HTML id属性在一个页面上应该是唯一的。如果您需要某些东西与某些文本相关联,则应该使用另一个属性,或者对它们进行不同的标记。如:
rel="<%# Eval("myId") %>"
class="<%# Eval("myId") %>"
您想给li
和a
相同的ID吗?
你可以随心所欲地使用Eval
。你使用那个值作为两个元素的ID,这就是VS抱怨的地方。
我建议
<li id="li_<%# Eval("myID") %>">
<a id="a_<%# Eval("myID") %>"></a>
</li>