我跟着这个类似的帖子。但是,它没有用,并且给我一个错误。
How can i create dynamic button click event on dynamic button?
错误是: “非可调用成员'System.Web.UI.WebControls.ImageButton.OnClientClick'不能像方法一样使用。”
我正在尝试的代码是:
ImageButton appIcon2 = new ImageButton();
appIcon2.OnClientClick(){ }
答案 0 :(得分:1)
在客户端点击需要javascript函数
即myImgButton.OnClientClick="return confirm('Are you sure?');";
如果你想做“点击”功能就这样做
ImageButton appIcon2 = new ImageButton();
appIcon2.Click += new System.Web.UI.ImageClickEventHandler(appIcon2_Click);
void appIcon2_Click(object sender, ImageClickEventArgs e)
{
// Your Code here
}
如果要访问此图像按钮,可以将发件人转换为图像按钮,如下所示
void appIcon2_Click(object sender, ImageClickEventArgs e)
{
ImageButton imgBtn= sender as ImageButton;
string id= imgBtn.ID;
}
答案 1 :(得分:1)
OnClientClick
接受一个字符串值,即它应该指向一个javascript代码块。
你可以这样做。
appIcon2.OnClientClick = "alert('s')";
或
appIcon2.OnClientClick = "myMethod()";
其中myMethod()
是在页面的html head
或body
中定义的javascript函数,即
function myMethod(){
alert('s');
}
对于您发布的链接,它只是说您如何直接向按钮添加事件处理程序。即。
protected void Page_Load(object sender , EventArgs)
{
ImageButton appIcon2 = new ImageButton();
appIcon2.Click += new System.Web.UI.ImageClickEventHandler(btn_Click);
}
void btn_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
//your logic
}
请注意Click
是event。它与服务器端控件相关联