0

这是我的按钮:

<asp:LinkButton ID="lnkButton" 
    OnClientClick="showEnroll(this,true,'<%# Eval("EventId") %>'); return false"      
    runat="server" CommandArgument='<%# Eval("EventId") %>'  />

这是错误:“服务器标签格式不正确”

4

2 回答 2

1

这意味着标记无效,这是因为内联数据绑定表达式。这样的事情应该会更好:

OnClientClick='<%# string.Format("showEnroll(this, true, \'{0}\'", Eval("EventId")) %>'

注意:我没有验证上面的代码。它旨在说明一个概念,可能需要调整。

于 2013-10-03T17:43:00.243 回答
1

在您的绑定中(即RowDataBound对于网格视图),添加如下逻辑:

// Attempt to find the control
var theLinkButton = e.Row.FindControl("lnkButton") as LinkButton;

// Only try to use the control if it was actually found
if(theLinkButton != null)
{
    // Grab the event ID from wherever here

    // Set the OnClientClick attribute here
    theLinkButton.Attributes.Add("onClientClick", 
        "showEnroll(this,true,'" + theEventId.ToString() + "'); return false");
}
于 2013-10-03T17:43:27.833 回答