2011-08-25 43 views
3

我得到下面这条线这条消息:服务器标签不规范

<asp:LinkButton ID="someID" CommandArgument="<%# Eval("ID") %>" 
       OnClick="someEvent_Click" 
       runat="server">some text</asp:LinkButton> 

它不喜欢,那我把EvalCommandArgument。这里有什么问题?

+0

[服务器标记形式不正确]可能的重复(http://stackoverflow.com/questions/680334/server-tag-is-not-well-formed) –

+0

因为这是一个asp控件,为什么不设置从后面的代码commandArgument? someID.CommandArgument = ....; – box86rowh

回答

17

它应该是这样的,用单引号:

<asp:LinkButton ID="someID" CommandArgument='<%# Eval("ID") %>' 
    OnClick="someEvent_Click" runat="server">some text</asp:LinkButton> 
+1

您也可以用"替代内部引号 –

3
<asp:LinkButton ID="someID" CommandArgument="<%# Eval('ID') %>" OnClick="someEvent_Click" runat="server">some text</asp:LinkButton> 

使用单个单撇号。

+0

为什么倒票? –

+0

+1来计数-1 –

+0

你的代码给我带来了一个编译错误。 –

0

把里面EvalID在单引号

+0

+1来衡量-1。 –

2

"<%# Eval("ID") %>"是罪魁祸首。其余唯一的CommandArgument="<%# Eval("其余的语法错误。尝试双双引号对双引号。像这样CommandArgument='<%# Eval("ID") %>'

2

尝试使用CommandArgument='<%# Eval("ID") %>'而不是(")