私は.NETで新しく、ダイナミックテーブルの作成に関する質問がありました。VB.Netでダイナミックテーブルを作成する
ユーザーがボタンをクリックしたときにテーブルに新しい行(名、姓、住所など)を追加するページを作成しています。私はあなたが動的テーブルへのポストバックを行うたびに、行を再作成する必要があることを読んでいます。それが私がやっていることです。
私はこれをテストしていますが、すでに約40行が追加されています。新しい行を追加するときにクリックすると、完全に遅くなり、100行を追加するのにかかる時間を想像するだけです。私はそれが行を再作成するのに時間がかかるからだと仮定しています。
私の質問は、より良いアプローチやタスクを達成するための別の方法はありますか?
"**は*現在やって何イムここで編集し
これは私のテーブル、ボタンコントロールです。ボタンがクリックされた
コード、動的テーブルを作成:
Dim tblrow As TableRow
Dim tblcell As TableCell
Dim inputText As TextBox
tblrow = New TableHeaderRow
tblcell = New TableHeaderCell
tblcell.Text = tableCount 'variable used to count rows in the table
tblcell.HorizontalAlign = HorizontalAlign.Left
tblrow.Cells.Add(tblcell)
tblcell = New TableCell
inputText = New TextBox
inputText.ID = "txt_" & tableCount
tblcell.Controls.Add(inputText)
tblrow.Cells.Add(tblcell)
table1.rows.add(tblrow)
を
これまでに学び、テストしたことから、私がポストバックを行うたびに、入力した内容をすべて保持するためにこのテーブルを再構築する必要がありますテーブル。
次の質問は、ポストバックを行う必要がないように、jqueryを使用して別の行を追加しない理由です。私はこの方法を試してみましたが、テーブルに入力された情報をポストバックが必要なデータベースに入れる必要がある限り、うまくいきました。だから私は元の問題に戻りました。
このイムすべての耳にアプローチするより良い方法がある場合は、注意してください。私が前に言ったように、私はこの言語に慣れず、ただ学びたいと思っています。
ダイナミックテーブルでは、文字通りテーブルのHTMLを書き出しているということですか?グリッドビューなどのコントロールを使用していますか? – Chains
何かを達成するにはより良い方法があります。ポストバックを行うのではなく、AJAXを調べてクライアント上にテーブルを作成してみてください。 jQueryはあなたの友人であることを忘れないでください。その日の終わりに、あなたのコードはおそらく簡単になり、理解しやすくなり、いくつか新しいトリックを学ぶことになります。グリッドビューは、一般的には、簡単で素早く汚れたハッキング用です。 –
JQueryでは、ポストバックを行うとどうなりますか?クライアント上に構築されたものはすべて再構築する必要がありますか? – Will