2011-08-25 44 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") %>'而不是(")