【发布时间】:2016-09-22 08:00:23
【问题描述】:
我的唯一文本框 ID 有问题。 我的代码正在为我的数据库中的每艘船创建一个带有 4 个文本框的 div。 每个创建的文本框都必须有一个唯一的 ID。 我使用增量 int(int i = 0 和 i++)执行此操作,但似乎无法使其正常工作。这是我的代码!
while (oReader.Read());
{
int i = 0;
System.Web.UI.HtmlControls.HtmlGenericControl createDiv =
new System.Web.UI.HtmlControls.HtmlGenericControl("DIV");
createDiv.ID = "createDiv";
this.Controls.Add(createDiv);
List<TextBox> tb_names = new List<TextBox>();
TextBox tb_name = new TextBox();
//TextBox tb_name = new TextBox();
tb_name.ID = "CreateT_" + i.ToString() + "_1";
tb_name.Text = oReader["SchipNaam"].ToString();
createDiv.Controls.Add(new LiteralControl
("<div class='form-group'><div class='clearfix' ></div><div class='row'><div class='col-md-3'></div><div class='col-md-3'> Scheepspnaam: <input type='text' id='" + tb_name.ID + "' runat='server'/></div></div></div>"));
tb_names.Add(tb_name);
//TextBox tb_name1 = new TextBox();
tb_name.ID = "CreateT_" + i.ToString() + "_1";
tb_name.Text = oReader["RederijNr"].ToString();
createDiv.Controls.Add(new LiteralControl
("<div class='form-group'><div class='clearfix' ></div><div class='row'><div class='col-md-3'></div><div class='col-md-3'> RederijNr:<input type='text' id='" + tb_name.ID + "' runat='server'/></div></div></div>"));
tb_names.Add(tb_name);
//TextBox tb_name2 = new TextBox();
tb_name.ID = "CreateT_" + i.ToString() + "_1";
tb_name.Text = oReader["Lengte"].ToString();
createDiv.Controls.Add(new LiteralControl
("<div class='form-group'><div class='clearfix' ></div><div class='row'><div class='col-md-3'></div><div class='col-md-3'> Lengte :<input type='text' id='" + tb_name.ID + "' runat='server'/></div></div></div>"));
tb_names.Add(tb_name);
//TextBox tb_name3 = new TextBox();
tb_name.ID = "CreateT_" + i.ToString() + "_1";
tb_name.Text = oReader["Laadvermogen"].ToString();
createDiv.Controls.Add(new LiteralControl
("<div class='form-group'><div class='clearfix' ></div><div class='row'><div class='col-md-3'></div><div class='col-md-3'> Laadvermogen:<input type='text' id='" + tb_name.ID + "' runat='server'/></div></div></div>"));
tb_names.Add(tb_name);
i++;
}
我的输出始终是 CreateT_0_1。我究竟做错了什么?我之前以为它有效,但似乎找不到问题。
我希望你们看到我做错了什么。
提前致谢!
【问题讨论】:
-
您为
while循环的每次迭代重置i,然后您总是后缀_1? -
第一行末尾的额外分号可能也无济于事......