我的步骤有什么问题?
Do While dread1.Read()
way = dread1.Item(0).ToString
sb.Append("<tr ><td>" & dread1.Item(2) & "</td>" + "<td>" & dread1.Item(5) & "</td>" +
"<td>" & dread1.Item(0) & "</td>" +
"<td><asp:LinkButton runat='server' id='waybutton' class='btn btn-success' on='waybill_Click' />" & dread1.Item(6) & "</td>" +
"<td>" & dread1.Item(7) & "</td>" + "<td>" & dread1.Item(8) & "</td>" +
"<td>" & dread1.Item(9) & "</td>" + "<td>" & dread1.Item(10) & "</td>" +
"<td>" & dread1.Item(11) & "</td>" + "<td>" & dread1.Item(12) & "</td>" +
"<td>" & dread1.Item(14) & "</td>" + "</tr>")
l.Text = sb.ToString
tr1.Controls.Add(l)
Loop
Protected Sub waybill_Click(sender As Object, e As EventArgs)
Response.Redirect("")
End Sub
答案 0 :(得分:0)
您的代码显示在此行中:
<asp:LinkButton runat='server' id='waybutton' class='btn btn-success' on='waybill_Click'
/>
您想通过字符串内容添加ASP.NET动态控件并呈现它,这在ASP.NET中是不可能像您所做的那样将某些ASP.Net控件作为HTML字符串添加到页面中,但是您可以将HTML元素添加为字符串,因此可以轻松地将HTML button
元素作为<button onclick="clientFunction()">Click Me</button>
添加到页面,因为HTML可以呈现该字符串,另一方面,不可能直接使用HTML元素,例如通过HTML waybill_Click
触发button
(可能有一些技巧)。
无论如何,如果您想添加ASP.Net动态控件并为其添加事件,请查看here或google ASP.Net dynamic control
。
更新:
sb.Append("<tr ><td>" & dread1.Item(2) & "</td>" + "<td>" & dread1.Item(5) & "</td>" +
"<td>" & dread1.Item(0) & "</td>" +
"<td><a id='waybutton' class='btn btn-success' href="redirectPage.aspx">Link Title</a>" & dread1.Item(6) & "</td>" +
"<td>" & dread1.Item(7) & "</td>" + "<td>" & dread1.Item(8) & "</td>" +
"<td>" & dread1.Item(9) & "</td>" + "<td>" & dread1.Item(10) & "</td>" +
"<td>" & dread1.Item(11) & "</td>" + "<td>" & dread1.Item(12) & "</td>" +
"<td>" & dread1.Item(14) & "</td>" + "</tr>")
但是如果您需要添加动态asp:LinkButton
,则需要拥有一个ASP.NET持有人控件,例如Panel
或Form
,然后像这样添加到其中:
protected void Page_Load(object sender, EventArgs e)
{
LinkButton lnkRedirect = new LinkButton();
lnkRedirect.ID = "lnkRedirect1";
lnkRedirect.Text = "Redirect";
lnkRedirect.Click+=new EventHandler(lnkRedirect_Click);
form1.Controls.Add(lnkRedirect);
}
protected void lnkRedirect_Click(object sender, EventArgs e)
{
Response.Redirect("");
}
这只是一个示例ASP.Net C#代码,如果您想将ASP.Net控件添加到该表中,那么根据您设计的HTML表就可以了。
您应该使用纯ASP.Net或纯HTML来实现动态目的。