我收到了以下解析器错误消息。我该如何解决这个问题?
服务器标记格式不正确。
代码:
<a href="#" class="mySprite id<%# ((int)DataBinder.Eval(Container,"ItemIndex")) % 6 + 1%>">
首先,你的锚点是客户端的,你应该给它添加一个runat="server"
属性。其次,尝试按照以下方式使用它。
<a href="#" runat="server" id="mySprite1"
class='<%# "mySprite id" + ((int)DataBinder.Eval(Container,"ItemIndex")) % 6 + 1 %>'>
回顾一下表达式的区别可能会有所帮助:http://blogs.msdn.com/b/dancre/archive/2007/02/13/the-difference-between-lt-and-lt-in-asp-net.aspx
runat="server"
仅在数据绑定时需要。
因此,请改用 <%= %>
语法。同时确保引号没有混淆,外部使用 '
,内部使用 "
。
runat="server"
,只要你不在数据绑定事件中使用 html 控件(或者 label 的 associatedControl 属性)! - user57508