服务器标记格式不正确.中继器内的链接按钮


<asp:LinkButton ID="lnkBtn" runat="server" CssClass="csstab" Text='<%#Eval("Name")%>'
OnClientClick="return ShowInEditMode('<%#Eval("ID") %>')"></asp:LinkButton>

我想调用OnClientClick来调用javascript方法并传递参数。我收到服务器标签格式不正确的错误。我尝试将双引号更改为单引号等,仍然是相同的问题。

服务器标记格式不正确。中继器内的链接按钮

您的 OnClientClick 事件有一些错误的东西。

使用以下方式使用 OnClientClick

OnClientClick='<%# string.Format("javascript:return ShowInEditMode({0})", Eval("ID"))%>'

在 html 位中使用它

<asp:LinkButton ID="lnkBtn" runat="server" CssClass="csstab" Text='<%#Eval("Name")%>' OnClientClick='<%#CreateShowInEditModeMethod(Eval("ID")) %>'></asp:LinkButton>

然后在代码隐藏中定义它

 protected string CreateShowInEditModeMethod(string str)
 {
        return String.Format("return ShowInEditMode('{0}');", str);
 }

让我知道,如果没有解决:)

将外部双引号替换为单引号和 & Eval 引号以双引号将起作用。

onClientClick更改为:

OnClientClick='return ShowInEditMode("<%#Eval("ID") %>")'

最新更新