我已经为此苦苦挣扎好几天了。我创建了一个页面,其中包含从数据库表中选择的记录。我需要为每一行创建一个删除按钮。要求是将 mysql 与 Asp.Net 和 C# 一起使用。下面是选择代码:
//Show Data Method
public void ShowData()
{
using (connection)
{
using (var command = connection.CreateCommand())
{
command.CommandText = "SELECT CUST_ID,CUST_FNAME,CUST_SURNAME,CUST_DOB,CUST_GENDER,CUST_SMOKE_STATUS FROM customers";
connection.Open();
using (var reader = command.ExecuteReader())
{
var indexOfColumn1 = reader.GetOrdinal("CUST_ID");
var indexOfColumn2 = reader.GetOrdinal("CUST_FNAME");
var indexOfColumn3 = reader.GetOrdinal("CUST_SURNAME");
var indexOfColumn4 = reader.GetOrdinal("CUST_DOB");
var indexOfColumn5 = reader.GetOrdinal("CUST_GENDER");
var indexOfColumn6 = reader.GetOrdinal("CUST_SMOKE_STATUS");
htmlTable.Append("<table class='table table-bordered table-hover table-responsive'> ");
htmlTable.Append("<tr style='background-color:#c7c7c7; color: White;'><th>Customer ID.</th><th>First Name</th><th>Last Name</th><th>Date of Birth</th><th>Gender</th><th>Smoker Status</th><th>Actions</th></tr>");
while (reader.Read())
{
var value1 = reader.GetValue(indexOfColumn1);
var value2 = reader.GetValue(indexOfColumn2);
var value3 = reader.GetValue(indexOfColumn3);
var value4 = reader.GetValue(indexOfColumn4);
var value5 = reader.GetValue(indexOfColumn5);
var value6 = reader.GetValue(indexOfColumn6);
htmlTable.Append("<tr>");
htmlTable.Append("<td>" + value1.ToString() + "</td>");
htmlTable.Append("<td>" + value2.ToString() + "</td>");
htmlTable.Append("<td>" + value3.ToString() + "</td>");
htmlTable.Append("<td>" + value4.ToString() + "</td>");
htmlTable.Append("<td>" + value5.ToString() + "</td>");
htmlTable.Append("<td>" + value6.ToString() + "</td>");
htmlTable.Append("<td>" +
"<form id='form1' runat='server' action = 'customerprofile.aspx'><a href='customerprofile.aspx' class='btn btn-primary btn-xs' role='button'><span class='button-links'><i class='fa fa-folder-open'></i> View</span></a> </form>" +
"</td>");
// now, do something what you want
}
htmlTable.Append("</tr>");
htmlTable.Append("</table>");
DBDataPlaceHolder.Controls.Add(new Literal { Text = htmlTable.ToString() });
}
// connection.Close();
}
}
}
<小时/>
下面是数据库表:
Customer_ID First Name Last Name Age Gender Status Action
4903015744088 George litsa 18 Male N Delete
7208114443089 Kholie Daliwe 19 Female N Delete
7903155743090 Tankiso Ramokoena 20 Male Y Delete
7903015743091 Tiisetso Masuku 21 Male Y Delete
7903105443092 Sindiswa Phaswana 22 Female N Delete
7903113743093 Khanya Gazi 23 Female Y Delete
最佳答案
有几件事......
首先,您要创建一个 <form>
对于每一行,这可能不是您想要做的?尽管如此,您的表单操作和 <a href>
值相同。
如果您想使用表单,我建议在表格周围定义它,然后使用 'submit'
按钮来完成工作。您可以使用onclick
处理程序设置 <hidden>
值然后 submit();
表格。您的接收页面需要检索您尝试删除的行的 ID,并从那里处理它。
否则,忽略表单并仅将按钮呈现为 <a>
链接。我想您想要渲染一些查询字符串参数(例如 ?id=x
)作为 href
的一部分.
在不了解有关 html 渲染位置的更多信息的情况下,我可以建议查看的内容就这么多。
关于c# - 表中每一行的删除按钮 asp.Net C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38600174/