私はImがやろうとしていることに最善のアプローチを取りたかったのです。別のデータベースから私たちのデータベースにインポートして情報をリンクするsprocがデータベースにあります。リンクされた情報が欠落している場合、エラーが発生し、ユーザーが解決します。コードビハインドでは、これらのエラーが発生しています。エラーごとに行を追加するhtmlテーブルを作成します。今、私はこの情報を複数のページにまたがって保持したいので、これをセッションに保存しています。これは単なるhtmlテーブルであり、グリッドのような強力なコントロールではないため、セッションまたはその他の方法でHTMLテーブルを保存するための最良の方法は何ですかクライアント側でJavascriptまたはJqueryでこれにアクセスして、Jquery関数を利用してこの情報を表示する拡張可能なdivを表示するにはどうすればよいですか?
protected void BtnAddDock1_Click(object sender, EventArgs e)
{
try
{
HtmlGenericControl RadDocksDiv = (HtmlGenericControl)Master.FindControl("RadDocksDiv");
RadDocksDiv.Style["display"] = "block";
Session["Docking"] = "Open";
Table tblErrors = new Table();
tblErrors.ID = "tblErrors";
tblErrors.CssClass = "tabularData";
tblErrors.Width = 800;
TableHeaderRow hr = new TableHeaderRow();
// hr.ID = "tblErrorsHeaderRow";
TableHeaderCell thc = new TableHeaderCell();
//thc.ID = "tblErrorsHeaderCell";
thc.Text = "Error Descriptions";
hr.Cells.Add(thc);
tblErrors.Rows.Add(hr);
Panel pnlErrors = (Panel)Master.FindControl("pnlErrors");
Table dobleTable = (Table)Master.FindControl("tblErrors");
if (dobleTable == null)
{
pnlErrors.Controls.Add(tblErrors);
for (int i = 0; i < 10; i++)
{
TableRow tableRow = new TableRow();
string error = "This is a website generated Import Error that needs to be added to the panel on Masterpage!";
TableCell tableCell = new TableCell();
tableCell.Text = error;
tableRow.Cells.Add(tableCell);
tblErrors.Rows.Add(tableRow);
}
Session["ErrorsTable"] = tblErrors;
}
//Table tblErrors = (Table)Master.FindControl("tblErrors");
}
catch (Exception ex)
{
throw ex;
}
}
これがJavascriptでこれを取得しようとしている方法ですが、セッションから取得しようとすると、System.Web.UI.WebControls.Tableだけが表示されます。
//Access html table in session
var dockingState = '<%= Session["Docking"] %>'
if (dockingState == "Open") {
// This doesnt return the html table correctly?!?
var sessiontblErrors = '<%= Session["ErrorsTable"] %>'
if (sessiontblErrors != null) {
var pnlErrors = $("[id$=pnlErrors]");
}
}