我有一个要求,我需要能够click
动态生成 div
所以,我已经生成了buttons also dynamically
,并希望链接 ClickEvent of Button
到div's Click event
。
for (int i = 0; i < DtUsers.Rows.Count; i++)
{
ASPxButton btnButton = new ASPxButton();
btnButton.ID = "btnButton" + (i + 1);
btnButton.Visible = false;
btnButton.Click += new EventHandler(this.btnButton_Click);
btntButton.CommandArgument = DtOnlineUsers.Rows[i]["USER_ID"].ToString();
var divCustomItem = new HtmlGenericControl("div");
divUandMeUsers.Controls.Add(divCustomChatItem);
divCustomItem.Controls.Add(btnButton);
divCustomItem.Attributes.Add("onclick", "document.getElementById('<%= " + btnButton.ClientID + " %>').click()");
}
但是,它没有用。你能告诉我哪里做错了吗?
我需要对UpdatePanel AsyncPostBackTrigger做些什么吗?
当我click the div
时,在developer tools
中,它会说Uncaught TypeError: Cannot read property 'click' of null
答案 0 :(得分:0)
更改
divCustomItem.Attributes.Add("onclick", "document.getElementById('<%= " + btnButton.ClientID + " %>').click()");
到
divCustomItem.Attributes.Add("onclick", "document.getElementById('" + btnButton.ClientID + "').click()");
在服务器端操作期间,您不需要客户端服务器。
编辑:好的,所以我用更精细的梳齿梳理了你的代码,我发现了这些额外的问题:
尝试解决这些问题并发布新代码,如果这仍然无效。