我在一个动态生成的html表格中,从一个带有文本框的数据集中生成了一些问题。我有5个问题和5个文本框。 所以,我需要找回一些文本框的值。
我正在遍历数据集并在其旁边添加一系列带有文本框的问题。但是,我是否需要为每个文本框生成一些唯一ID?
private void GenerateTable(int colsCount, int rowsCount, DataSet ds, DataSet ds2)
{
if (!IsPostBack)
{
int counter = 0;
List<TableRow> tableRowList = new List<TableRow>();
List<TableCell> tableCellList = new List<TableCell>();
List<Control> controlsList = new List<Control>();
foreach (DataTable dataTable in ds.Tables)
{
foreach (DataRow dataRow in dataTable.Rows)
{
TableRow tableRow = new TableRow();
TableCell tableCell = new TableCell();
TableCell tableCell2 = new TableCell();
TextBox textbox = new TextBox();
//textbox.ID = "TextBoxID";
TableRow tableRow2 = new TableRow();
TableCell tableCel2 = new TableCell();
tableCell.Text = dataRow["QUESTIONTEXT"].ToString();
if (dataRow["TYPEID"].ToString() == "1")
{
tableCell2.Controls.Add(textbox);
controlsList.Add(textbox);
}
tableRow.Cells.Add(tableCell);
tableRow.Cells.Add(tableCell2);
myTable.Rows.Add(tableRow);
tableRowList.Add(tableRow);
tableCellList.Add(tableCell);
tableCellList.Add(tableCell2);
counter++;
}
}
//TextBox tb = myTable.FindControl(TextBoxID) as TextBox;
答案 0 :(得分:1)
我是否需要为每个文本框生成一些唯一ID?
是的... id必须是唯一的。具有多个具有相同ID的元素的页面为 invaliid
spec:
id = name [CS]
此属性为元素指定名称。该名称在文档中必须是唯一的。
但如果您根本不使用id
,则根本无法分配ID ...