ASP:LinkButton 和 Eval
我在 GridView 中的 TemplateField 内的 ItemTemplate 内使用 ASP:LinkButton。 对于链接按钮的命令参数,我想从 gridview 绑定到的数据源传递行的 ID,所以我正在做这样的事情:
<asp:LinkButton ID="viewLogButton" CommandName="viewLog" CommandArgument="<%#Eval("ID")%>" Text="View Log" runat="server"/>
不幸的是,生成的 HTML 是这样的:
<asp:LinkButton ID="viewLogButton" CommandName="viewLog" CommandArgument="3" Text="View Log" runat="server"/>
看起来它 正在正确解析Eval(),但这在某种程度上导致它无法解析LinkButton标记并将其转储为文字文本。 有谁知道:
a)为什么会发生这种情况,并且, b) 解决这个问题的好办法是什么?
I'm using an ASP:LinkButton inside of an ItemTemplate inside of a TemplateField in a GridView. For the command argument for the link button I want to pass the ID of the row from the datasource that the gridview is bound to, so I'm doing something like this:
<asp:LinkButton ID="viewLogButton" CommandName="viewLog" CommandArgument="<%#Eval("ID")%>" Text="View Log" runat="server"/>
Unfortunately, the resulting HTML is this:
<asp:LinkButton ID="viewLogButton" CommandName="viewLog" CommandArgument="3" Text="View Log" runat="server"/>
It seems that it is parsing the Eval() properly, but this is somehow causing it not to parse the LinkButton tag and just dump it out as literal text. Does anyone know:
a) why this is happening and,
b) what a good solution to this problem is?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
虽然它可能不是导致它的原因,但我通常这样定义它:
请发布 GridView 标记的其余部分,因为它不应该这样做。
While it may not be causing it, I usually define it like this:
Please post the rest of the GridView's markup, as it shouldn't be doing that.