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

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

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

4

3 回答 3

2

您的 OnClientClick 事件有一些错误。

通过以下方式使用 OnClientClick

OnClientClick='<%# string.Format("javascript:return ShowInEditMode({0})", Eval("ID"))%>'
于 2013-10-23T06:10:49.573 回答
1

好吧,在 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);
 }

让我知道是否没有解决:)

于 2013-10-23T06:28:26.353 回答
0

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

更改onClientClick为:

OnClientClick='return ShowInEditMode("<%#Eval("ID") %>")'
于 2013-10-23T06:12:31.380 回答