我有以下代碼動態綁定表的函數。我在頁面加載中調用這個函數。調用此方法後,表格將包含三列:複選框,標籤和文本框。html表綁定問題
我也有一個按鈕控制。當點擊這個按鈕時,我正在檢查表格內選中的複選框,然後將數據插入到與選中的複選框相對應的數據庫中。
問題是,當單擊按鈕時,由於按鈕單擊也調用頁面加載,調用下面的函數並因此重新創建了表中的所有元素,所以它沒有存儲複選框的選中狀態。
我不能在這裏使用Page.IsPostBack,因爲當按鈕被點擊時應該加載表。如果我寫的內部下面的代碼,如果(!Page.IsPostBack)然後點擊鏈接它沒有在表中
try
{
ManageVIN objMngVin = new ManageVIN();
DataTable tblVins = objMngVin.MyFunction(clientCode);
if (tblAssociateFleet.Rows.Count > 1)
{
for (int i = 1; i <= tblAssociateFleet.Rows.Count - 1; i++)
{
tblAssociateFleet.Rows[i].Cells.Clear();
}
}
if (tblVins != null && tblVins.Rows.Count > 0)
{
foreach (DataRow dr in tblVins.Rows)
{
HtmlTableRow tblRow = new HtmlTableRow();
tblRow.Attributes.Add("class", "tblrow");
HtmlTableCell tblCell1 = new HtmlTableCell();
CheckBox chk = new CheckBox();
chk.CssClass = "selctChk";
if (!Page.IsPostBack)
{
chk.Checked = false;
}
tblCell1.Controls.Add(chk);
HtmlTableCell tableCelll2 = new HtmlTableCell();
Label lblVinVlaue = new Label();
lblVinVlaue.Text = Convert.ToString(dr["VIN"]);
tableCelll2.Controls.Add(lblVinVlaue);
HtmlTableCell tableCell3 = new HtmlTableCell();
TextBox txtVinVal = new TextBox();
txtVinVal.CssClass = "textEntry";
tableCell3.Controls.Add(txtVinVal);
tblRow.Cells.Add(tblCell1);
tblRow.Cells.Add(tableCelll2);
tblRow.Cells.Add(tableCell3);
tblAssociateFleet.Rows.Add(tblRow);
}
}
}
我該如何處理這個問題找到任何行?
從preinit調用函數時,它第一次正常工作,但現在我有一個下拉也OnSelectedIndexChange我打電話相同的功能 問題是更改下拉列表中的值,然後單擊按鈕下拉選擇索引在功能中更改爲默認值。 – Mac