我正在尝试对现有表实现删除功能(按钮)。我不能改变它的完成方式,所以我需要做一个字符串构建器。无论如何,你可以制作一个asp:按钮或只是一个按钮,它将在一个字符串构建器中触发和事件onclick?只需将其添加到stringbuilder就可以将其渲染为纯HTML而不是控件。
我尝试了什么:
foreach (SortableNode n in nodes)
{
html.AppendLine(
"<tr id='" + NodeIdName() + n.id.ToString() + "' " + (n.sortOder == 0 ? " class='sortsep'" : "") + ">" +
"<td>" + n.Name + "<input type='hidden' name='" + NodeIdName() + n.id.ToString() + "' id='" + NodeIdName() + n.id.ToString() + "' value='" + n.id.ToString() + "' /></td>" +
"<td class='nowrap'>" + n.createDate.ToString("yyyy-MM-dd HH:mm:ss") + "</td>" +
"<td style='text-align: center;'>" + n.sortOder + "</td>" +
"<td><asp:Button id=\"BuTOTNON" + counter +"\" cssClass=\"btnDelLink\" runat=\"server\" CommandArgument=\"" + n.id + "\" OnClick=\"bDelete_Click\" Text='X'/>" + "</td>" +
"</tr>");
}
lt_nodes.Text = html.ToString();
或者用JS做这个客户端的简单方法?
答案 0 :(得分:0)
对于任何发现这一点的人来说,香港专业教育学院使其成功,但取代了&#34; lateral placeholder&#34;与实际的砂土持有人一样,并做到了这样:
foreach (SortableNode n in nodes)
{
Button deleteBtn = new Button();
deleteBtn.Text = "X";
deleteBtn.Click += new EventHandler(bDelete_Click);
deleteBtn.ID = n.id.ToString();
html.AppendLine(
"<tr id='" + NodeIdName() + n.id.ToString() + "' " + (n.sortOder == 0 ? " class='sortsep'" : "") + ">" +
"<td>" + n.Name + "<input type='hidden' name='" + NodeIdName() + n.id.ToString() + "' id='" + NodeIdName() + n.id.ToString() + "' value='" + n.id.ToString() + "' /></td>" +
"<td class='nowrap'>" + n.createDate.ToString("yyyy-MM-dd HH:mm:ss") + "</td>" +
"<td style='text-align: center;'>" + n.sortOder + "</td><td>"
);
PlaceHolder1.Controls.Add(new LiteralControl(html.ToString()));
PlaceHolder1.Controls.Add(deleteBtn);
PlaceHolder1.Controls.Add(new LiteralControl("</td></tr>"));
}