在我的项目中,我根据用户输入动态创建面板。每个面板都有一个“删除按钮”。单击按钮时,应移除面板。但是为了隐藏它/或删除面板我需要自动命名的button-id,我无法重命名。
input type="submit" name="ctl00$MainContent$ctl04" value="Copy PDF and Post Script files!"
usesubmitbehavior="false" EnableViewState="true" type="Button" id="645" name="645" />
addButtonCopyFiles[i].Attributes["id"] = templateId[i].Text;
addButtonCopyFiles[i].Attributes["name"] = templateId[i].Text;
这是我命名它们的方式,但名称不会被替换。我甚至删除了“runat”,“server”属性。
任何帮助将不胜感激
答案 0 :(得分:1)
ID
的{{1}}属性可以在添加到页面之前显式设置。
替换此代码:
Control
使用此代码:
addButtonCopyFiles[i].Attributes["id"] = templateId[i].Text;
addButtonCopyFiles[i].Attributes["name"] = templateId[i].Text;
eachPanel[i].Controls.Add(addButtonCopyFiles[i]);
答案 1 :(得分:0)
在动态创建中,将面板css类设置为包含与按钮相同的动态ID。你没有说你是在删除面板服务器还是客户端,但我假设隐藏它,客户端就足够了。
addButtonCopyFiles[i].Attributes["id"] = templateId[i].Text;
addButtonCopyFiles[i].Attributes["name"] = templateId[i].Text;
dynamicPanel.CssClass = "dynamicPanel_" + templateId[i].Text;
//jQuery button click event
function removePanel(id){
$(".dynamicPanel_" + id).hide();
}