我有这段代码而且没有正确评估<%# Eval("url") %>
内的OnClientClick
<asp:LinkButton runat='server' Text='<%# Eval("Modulo") %>'
OnClientClick='return LoadIframe(<%# Eval("url") %>)'
ID='linkSeleccionar' />
因为它正在翻译成:
<a onclick="return LoadIframe(<%# Eval("url") %>);" id="RepMenu_RepModulos_0_linkSeleccionar_0" href="javascript:__doPostBack('ctl00$RepMenu$ctl01$RepModulos$ctl01$linkSeleccionar','')">Hoja Trabajo</a>
应该怎么写?
答案 0 :(得分:0)
试试,
<asp:LinkButton runat="server" ID="lbtnEdit" Text='<%# Eval("Modulo") %>'
OnClientClick='<%# "return LoadIframe(" + Eval("url") + ");" %>' />
或者,您可以从后面的代码绑定它。
protected void GridView1_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton button = (LinkButton)e.Row.FindControl("lbtnEdit");
string url= DataBinder.Eval(e.Row.DataItem, "url").ToString();
button.OnClientClick = string.Format("return LoadIframe('{0}');", url);
//button.Attributes.Add("onclick", string.Format("return LoadIframe('{0}')", url));
}
}