此服务器标记无效。它不断给出server tag is not well formed
。我尝试使用"标记的所有组合。和'。似乎没什么用。
<asp:LinkButton CssClass="docs" OnClientClick='return selectionChanged('<%#Eval("Item1") %>')' runat="server" Text='<%#Eval("Item2") %>' />
感谢任何帮助。
答案 0 :(得分:3)
如果Item1是一个数字,你可以尝试这个::
<asp:LinkButton CssClass="docs" OnClientClick='<%# string.Concat("return selectionChanged(",Eval("Item1"),".toString())") %>' runat="server" Text='<%#Eval("Item2") %>' />
或使用自定义方法:
<asp:LinkButton CssClass="docs" OnClientClick='<%# GetOnClick(Eval("Item1")) %>' runat="server" Text='<%#Eval("Item2") %>' />
protected string GetOnClick(object item1)
{
return string.Format("return selectionChanged('{0}')", item1);
}
答案 1 :(得分:1)
嘿,这是怎么回事:
<asp:LinkButton CssClass="docs"
OnClientClick='<%#Eval("Item1", "return selectionChanged(\"{0}\")") %>'
runat="server"
Text='<%#Eval("Item2") %>' />
答案 2 :(得分:-1)
你在OnClientClieck声明中使用过单引号 试试这个:
<asp:LinkButton
CssClass="docs"
OnClientClick="return selectionChanged('<%#Eval("Item1") %>')"
runat="server" Text='<%#Eval("Item2") %>' />
或在服务器端分配OnClientClick值(例如在Row / ItemDataBound事件处理程序中)