2012-05-31 78 views
0
PnlImages.Controls.Add(new LiteralControl(" <img id=\"img\" class=\"content\" src=\"" + url + "\" runat=\"server\" name=\"img\" onclick=\"return onClick(this);\" />")); 


public void onClick(object sender) 
{ 

} 

调试器不会发射,而是给出错误“对象预期”。
请帮忙。未在代码背后触发的事件

+1

据我所知,字面控制只会将html复制到客户端(不处理您的runat =“server”位),因此onClick在客户端JavaScript中触发。您可能想添加一个Image控件而不是添加Literal –

回答

2

runat = \“server \”属性不是一个HTML属性,而是一个ASP.Net实例化ASP.Net控件(System.Web.UI命名空间)的指令,它不仅生成HTML,还生成ViewState,事件处理程序等。

onclick属性是指需要在HTML或链接的.js文件中实现的JavaScript函数,而不是C#后端代码中的OnClick方法。