データベースのユーザー情報テーブルからの情報を使用して html テーブルを作成しようとしています。情報を表示することはできましたが、各ユーザー (表の行) の横に削除ボタンを追加することはできませんでした。
基本的に、SQLデータベースからユーザー情報テーブル全体を取得し、それをループして、既に作成されたdiv内に行とセルを追加しました(見出しの最初の行を追加したため、開始タグのみがあります)
動的に作成する各ボタンにユーザー名に応じて ID を割り当て、ループして削除するためにボタンのいずれかが押されているかどうかを確認しようとしましたが、トリガーされませんでした。
私は初心者で、これを行う正しい方法にかなり困惑しています。どんな助けにもとても感謝しています。
html:
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Admin.aspx.cs" Inherits="_Default" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
<link href="css/admin.css" rel="stylesheet" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<header class="grid_9">פאנל מנהל</header>
<div class="grid_9 block_head"> טבלת משתמשים </div>
<div class="block grid_9" id="user_block" runat="server">
<table>
<tr>
<td>שם משתמש</td>
<td>סיסמא</td>
<td>אימייל</td>
<td>הרשאות</td>
<td>מחיקה</td>
</tr>
</div>
</asp:Content>
c#
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(Session["Admin"] == null || Session["Admin"].Equals(0))
{
Response.Write(@"<script language='javascript'>alert('אין לך את ההרשאות המתאימות לצפות בדף זה');window.location.href = 'Default.aspx';</script>");
}
string sql = "SELECT * FROM [userinfo]";
DataSet data = Database.GetDataOffline(sql);
foreach (DataRow row in data.Tables[0].Rows)
{
user_block.InnerHtml += "<tr><td>" + row[1] + "</td><td>" + row[2] + "</td><td>" + row[3] + "</td>";
if (row[4].ToString().Equals("1")) { user_block.InnerHtml += "<td>" + "מנהל" + "</td><td><input type='button' value='מחק' id=" + row[1] + " runat='server'></td></tr>"; }
else { user_block.InnerHtml += "<td>" + "משתמש" + "</td><td><input type='button' value='מחק' id=" + row[1] + " runat='server'></td></tr>"; }
}
user_block.InnerHtml += "</table>";
foreach (DataRow row in data.Tables[0].Rows)
{
string user = row[1].ToString();
if (Request.Form["" + user] != null)
{
Response.Write("Removing");
string userSql = "DELETE * FROM [userinfo] WHERE [username] ='" + user + "'";
Database.UpdateData(userSql);
Response.Redirect("admin.aspx");
}
}
}