2

いくつかのテーブルを含むasp.netWebサイトがあります。ただし、これらはasp:Tableではありません。つまり、次のように作成された単純なHTMLテーブルです。

 <table><tr><td></td></tr></table> 

ここで、コードビハインド(つまりC#)からこのテーブルに動的に行を追加できるかどうかを知りたいのですが、可能であれば、どうすればよいですか?

4

5 に答える 5

3

Idを指定してrunat="server"属性を設定し、指定したIDを使用してコードビハインドから使用できます。

System.Web.UI.HtmlControls.HtmlTableRow r=new System.Web.UI.HtmlControls.HtmlTableRow();
            System.Web.UI.HtmlControls.HtmlTableCell c = new System.Web.UI.HtmlControls.HtmlTableCell();
            c.InnerText = "New Cell";
            r.Cells.Add(c);
            T.Rows.Add(r);

ここで、TはテーブルのIDです。

于 2012-07-17T10:29:01.080 に答える
2

しばらく経ちましたが、ASP.NETWebフォームにはこの種のもののためのリピーター制御があります。

これは、この概念を紹介する素晴らしい記事です:ASP.NETのデータリピーターコントロール

これは、AJAX/JScriptでハッキングするよりも簡単だと思います

これとは別に、Daniel Casserlyは正しいです-これは、MVCで実行すると非常に簡単です(Razor-Syntaxを使用するとさらに簡単になります)。

<table>
    @foreach (var item in Model)
    {
        <tr>
            <td>@item.Name</td>
            ... whatever you need here ...
        </tr>
    }
</table>
于 2012-07-17T09:13:25.393 に答える
1

これはJQueryで行うことができますが、そのためには、IDまたはクラスを指定するか、テーブル配列を検索してから行を挿入する必要があります。

于 2012-07-17T09:10:57.120 に答える
1

はい、できます:このリンクをたどる:HTMLテーブルに新しい行を動的に追加する

そしてこれ:C#を使用してASP.NETテーブルに行を動的に追加する方法

于 2012-07-17T09:14:41.143 に答える
0

HTMLコードビハインドからテーブル全体を作成する方が良いと思います。このために、リテラルを追加し、それをコードビハインドで使用して、コードビハインドからテーブル構造を追加できます。

たとえばHTML、鳥の詳細の表を作成しましょう。説明を簡潔にするために、鳥の詳細で満たされたデータテーブル部分は含めていません。

if (dtBirdsDetail.Rows.Count > 0)
    {
      litBirdsTable.Text = "<center><table id='tbldata' cellspacing='0' cellpadding='1' border='1' style='border-collapse: collapse;'>" + System.Environment.NewLine;
      litBirdsTable.Text += "<tr>";

      //add datatable columns to html table as heading
for (int liColumnIndex = 0; liColumnIndex < dtBirdsDetail.Columns.Count;liColumnIndex++)
       {
         litBirdsTable.Text += "<th>" + dtBirdsDetail.Columns[liColumnIndex].ColumnName 
                             + "</th>" +   System.Environment.NewLine;
       }
       litBirdsTable.Text += System.Environment.NewLine + "</tr>";

       //add datatable rows to html table
       for (int liRowIndex = 0; liRowIndex < dtBirdsDetail.Rows.Count; liRowIndex++)
       {
         litBirdsTable.Text += "<tr>";
         litBirdsTable.Text += "<td>" + dtBirdsDetail.Rows[liRowIndex]["ID"] + "</td>" +              
                                System.Environment.NewLine;
         litBirdsTable.Text += "<td>" + dtBirdsDetail.Rows[liRowIndex]["BirdName"] + " 
                               </td>" + System.Environment.NewLine;
         litBirdsTable.Text += "<td>" + dtBirdsDetail.Rows[liRowIndex]["TypeOfBird"] + " 
                               </td>" + System.Environment.NewLine;
         litBirdsTable.Text += "<td>" + dtBirdsDetail.Rows[liRowIndex]["ScientificName"] 
                             + "</td>" + System.Environment.NewLine;
         litBirdsTable.Text += "</tr>";
       }
        litBirdsTable.Text += "</table></center>";
    }

詳細な説明については、次のリンクにアクセスしてください。

http://codevariation.blogspot.com/2018/03/html-table-design-with-dynamic-data.html

于 2019-01-03T07:50:31.583 に答える