当前位置:编程学习 > C#/ASP.NET >>

在线等!!! ASP.NET 在线考试系统 填空题 求助

我从SQL SERVER中读出一个填空题,如:
____在其最好情况下的算法时间复杂度为O(n)。

在用下面语句将其转换:

str = System.Text.RegularExpressions.Regex.Replace(str, "_+", "<input id=\"" + Application["exID"] + "TKT" + k + "\" name=\"" + Application["exID"] + "TKT" + k + "\" runat=\"server\" class=\"input\"/>");
然后将str重新写回数据库,覆盖上面的原来的题目

现在数据库中的题目为:

<input id="30102TKT1" name="30102TKT1" runat="server" class="input"/>在其最好情况下的算法时间复杂度为O(n)。

问题:现在无法取到TextBox 30102TKT1的值。

我用的取值语句是:

TextBox txt = (TextBox)DataList3.Items[int_row3 - 1].FindControl("TextBox1");
判断时txt==null;

求各位大虾帮助,谢谢  --------------------编程问答--------------------
<input id="30102TKT1" name="30102TKT1" runat="server" class="input"/>
这个标签 都结束了,怎么可能取到值,"在其最好情况下的算法时间复杂度为O(n)。"这句话是在标签外面的 --------------------编程问答-------------------- <input id="30102TKT1" name="30102TKT1" runat="server" class="input">在其最好情况下的算法时间复杂度为O(n)。</input>
改成这样试试。 --------------------编程问答--------------------
引用 2 楼 kingdom_0 的回复:
<input id="30102TKT1" name="30102TKT1" runat="server" class="input">在其最好情况下的算法时间复杂度为O(n)。</input>
改成这样试试。

谢谢啊!<input id="30102TKT1" name="30102TKT1" runat="server" class="input">是个文本框 是用户输入答案用的 我就是要取这个TextBox里面的答案。 --------------------编程问答-------------------- 设置断点跟踪一下,看看input标签中是否有值。再看问题出现在哪。 --------------------编程问答--------------------
引用 4 楼 kingdom_0 的回复:
设置断点跟踪一下,看看input标签中是否有值。再看问题出现在哪。

我把完整代码 发给你看下吧 我设了断点 tb一直等于null
 SqlDataAdapter myadapter6 = new SqlDataAdapter("select * from tb_TQuestion where exID='" + Application["exID"] + "'", con);
                    DataSet myds6 = new DataSet();
                    myadapter6.Fill(myds6);
                    DataRow[] row3 = myds6.Tables[0].Select();
                    foreach (DataListItem item in DataList3.Items)
                    {
                        if (item.ItemType == ListItemType.AlternatingItem ||     item.ItemType == ListItemType.Item)
                        {
                            TextBox tb = (TextBox)item.FindControl("30102TKT1");
                            if (tb == null)
                                Response.Write("1");
                            else
                                Response.Write("2");
                        }
                    }
显示结果是两个1,也就是tb==null
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,